Function at 0x10a5ef5
Capabilities:
Get file size

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x6d8
mov eax, dword [0x111027c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x24]
and dword [ebp - 0x14c], 0
mov dword [ebp - 0x164], eax
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x20]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 0x1c]
push edi
mov edi, dword [ebp + 0x18]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x16c], edi
mov dword [ebp - 0x1a4], esi
mov dword [ebp - 0x1ac], ebx
mov dword [ebp - 0x130], ecx
mov dword [ebp - 0x198], eax
mov byte [ebp - 0x194], 0
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a5f90
test byte [eax + 0x1c], 4
je 0x10a5f90
cmp byte [eax + 0x19], 4
jb 0x10a5f90
push 0x100ab50
push 0x16f
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0101894a
mov ecx, dword [ebp - 0x130]
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov esi, 0x80
mov dword [ebx], eax
mov dword [ebx + 4], eax
push esi
push eax
mov dword [ecx], eax
lea eax, [ebp - 0x2d8]
push eax
call sub.msvcrt.dll_memset
push 0x280
lea eax, [ebp - 0x5d8]
push 0
push eax
call sub.msvcrt.dll_memset
push esi
lea eax, [ebp - 0x358]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0x24
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a6015
test byte [eax + 0x1c], 4
je 0x10a6015
cmp byte [eax + 0x19], 4
jb 0x10a6015
push dword [ebp - 0x164]
push 0x100ab50
push 0x170
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01019633
xor edi, edi
lea ebx, [ebp - 0x5c8]
push 0x20000
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov esi, eax
mov dword [ebp + edi*4 - 0x258], esi
test esi, esi
je 0x10a60d6
push esi
call fcn.0109cc1a
mov dword [ebp + edi*4 - 0x2d8], eax
xor eax, eax
push eax
push eax
push 1
push eax
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [ebx], eax
test eax, eax
je 0x10a612e
xor esi, esi
mov dword [ebp + edi*4 - 0x358], esi
inc edi
add ebx, 0x14
cmp edi, 0x20
jb 0x10a601d
push 0x118
lea eax, [ebp - 0x12c]
push esi
push eax
mov dword [ebp - 0x154], esi
mov dword [ebp - 0x150], esi
call sub.msvcrt.dll_memset
mov edi, dword [ebp - 0x130]
add esp, 0xc
push edi
lea ecx, [ebp - 0x198]
call fcn.0109bb47
mov ebx, eax
cmp ebx, esi
je 0x10a617e
lea edi, [ebp - 0x5c8]
push dword [edi]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp + esi*4 - 0x258]
call dword [sym.imp.KERNEL32.dll_LocalFree]
inc esi
add edi, 0x14
cmp esi, 0x20
jb 0x10a60b4
mov esi, ebx
jmp 0x10a6110
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x130]
xor esi, esi
mov dword [ecx], eax
test edi, edi
jbe 0x10a610d
lea ebx, [ebp - 0x5c8]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp + esi*4 - 0x258]
call dword [sym.imp.KERNEL32.dll_LocalFree]
inc esi
add ebx, 0x14
cmp esi, edi
jb 0x10a60f0
push 3
pop esi
lea ecx, [ebp - 0x198]
call fcn.0109bb81
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.0106f798
leave
ret 0x20
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x130]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [ecx], eax
call esi
xor ebx, ebx
test edi, edi
jbe 0x10a617a
lea eax, [ebp - 0x5c8]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x160]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp + ebx*4 - 0x258]
call esi
add dword [ebp - 0x160], 0x14
inc ebx
cmp ebx, edi
jb 0x10a6157
push 8
jmp 0x10a610f
push edi
push esi
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x1a0]
push eax
lea eax, [ebp - 0x1b8]
push eax
lea eax, [ebp - 0x190]
push eax
lea eax, [ebp - 0x131]
push eax
lea eax, [ebp - 0x138]
push eax
push dword [ebp - 0x164]
lea ecx, [ebp - 0x12c]
call fcn.010b39a8
mov dword [ebp - 0x148], eax
mov ebx, 0x10000
cmp eax, esi
je 0x10a66a7
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a6209
test byte [eax + 0x1c], 4
je 0x10a6209
cmp byte [eax + 0x19], 4
jb 0x10a6209
push dword [edi]
push dword [ebp - 0x148]
push dword [ebp - 0x164]
push 0x100ab50
push 0x171
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01019c0f
push esi
push 0x60000080
push 3
push esi
push 1
push 0x80000000
push dword [ebp - 0x164]
mov byte [ebp - 0x131], 1
mov byte [ebp - 0x132], 1
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x138], eax
cmp eax, 0xffffffff
jne 0x10a62b4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, edi
mov dword [ebx], eax
xor edi, edi
lea esi, [ebp - 0x5c8]
push dword [esi]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp + edi*4 - 0x258]
call dword [sym.imp.KERNEL32.dll_LocalFree]
inc edi
add esi, 0x14
cmp edi, 0x20
jb 0x10a6250
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a617a
test byte [eax + 0x1c], 4
je 0x10a617a
cmp byte [eax + 0x19], 2
jb 0x10a617a
push dword [ebx]
push dword [ebp - 0x164]
push 0x100ab50
push 0x172
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01048c37
jmp 0x10a617a
lea ecx, [ebp - 0x184]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x10a6305
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [ebp - 0x138]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, edi
mov dword [ecx], eax
call esi
xor ebx, ebx
lea edi, [ebp - 0x5c8]
push dword [edi]
call esi
push dword [ebp + ebx*4 - 0x258]
call dword [sym.imp.KERNEL32.dll_LocalFree]
inc ebx
add edi, 0x14
cmp ebx, 0x20
jb 0x10a62e6
jmp 0x10a617a
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x180]
mov dword [ebp - 0x144], eax
or eax, ecx
mov dword [ebp - 0x140], ecx
jne 0x10a635c
push dword [ebp - 0x138]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
xor ebx, ebx
lea edi, [ebp - 0x5c8]
push dword [edi]
call esi
push dword [ebp + ebx*4 - 0x258]
call dword [sym.imp.KERNEL32.dll_LocalFree]
inc ebx
add edi, 0x14
cmp ebx, 0x20
jb 0x10a6337
mov esi, dword [ebp - 0x148]
jmp 0x10a6110
mov edi, dword [sym.imp.KERNEL32.dll_LocalAlloc]
push 0x20000
push esi
call edi
mov dword [ebp - 0x168], eax
cmp eax, esi
jne 0x10a63b7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x130]
push dword [ebp - 0x138]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ecx], eax
call esi
xor ebx, ebx
lea edi, [ebp - 0x5c8]
push dword [edi]
call esi
push dword [ebp + ebx*4 - 0x258]
call dword [sym.imp.KERNEL32.dll_LocalFree]
inc ebx
add edi, 0x14
cmp ebx, 0x20
jb 0x10a6398
jmp 0x10a610d
push ebx
push esi
call edi
mov dword [ebp - 0x170], eax
cmp eax, esi
jne 0x10a6426
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x130]
push dword [ebp - 0x168]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [ecx], eax
call esi
push dword [ebp - 0x138]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
and dword [ebp - 0x130], 0
lea ebx, [ebp - 0x5c8]
push dword [ebx]
call edi
mov eax, dword [ebp - 0x130]
push dword [ebp + eax*4 - 0x258]
call esi
inc dword [ebp - 0x130]
add ebx, 0x14
cmp dword [ebp - 0x130], 0x20
jb 0x10a63fc
jmp 0x10a610d
cmp dword [ebp - 0x140], esi
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x5d0], esi
mov dword [ebp - 0x5cc], esi
mov dword [ebp - 0x158], ebx
jg 0x10a645c
jl 0x10a6450
cmp dword [ebp - 0x144], ebx
jae 0x10a645c
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x158], eax
lea eax, [ebp - 0x5d8]
push eax
push dword [ebp - 0x158]
push dword [ebp - 0x2d8]
push dword [ebp - 0x138]
call fcn.010a0190
push 1
lea eax, [ebp - 0x14c]
push eax
lea eax, [ebp - 0x5d8]
push eax
push dword [ebp - 0x138]
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
test eax, eax
jne 0x10a6505
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x130]
push dword [ebp - 0x170]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [ecx], eax
call esi
push dword [ebp - 0x168]
call esi
push dword [ebp - 0x138]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
and dword [ebp - 0x130], 0
lea ebx, [ebp - 0x5c8]
push dword [ebx]
call edi
mov eax, dword [ebp - 0x130]
push dword [ebp + eax*4 - 0x258]
call esi
inc dword [ebp - 0x130]
add ebx, 0x14
cmp dword [ebp - 0x130], 0x20
jb 0x10a64d9
push 4
jmp 0x10a610f
mov ecx, dword [ebp - 0x14c]
cmp ecx, dword [ebp - 0x158]
je 0x10a65b2
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a654b
test byte [eax + 0x1c], 4
je 0x10a654b
cmp byte [eax + 0x19], 2
jb 0x10a654b
push dword [ebp - 0x158]
push ecx
push 0x100ab50
push 0x173
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01083f04
mov eax, dword [ebp - 0x130]
push dword [ebp - 0x170]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [eax], 0x45d
call esi
push dword [ebp - 0x168]
call esi
push dword [ebp - 0x138]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
and dword [ebp - 0x130], 0
lea ebx, [ebp - 0x5c8]
push dword [ebx]
call edi
mov eax, dword [ebp - 0x130]
push dword [ebp + eax*4 - 0x258]
call esi
inc dword [ebp - 0x130]
add ebx, 0x14
cmp dword [ebp - 0x130], 0x20
jb 0x10a6588
jmp 0x10a64fe
push 0x10
push 0x100ab30
push dword [ebp - 0x2d8]
call dword [sym.imp.ntdll.dll_RtlCompareMemory]
cmp eax, 0x10
je 0x10a6625
push dword [ebp - 0x170]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
call esi
push dword [ebp - 0x168]
call esi
push dword [ebp - 0x138]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
and dword [ebp - 0x130], 0
lea ebx, [ebp - 0x5c8]
push dword [ebx]
call edi
mov eax, dword [ebp - 0x130]
push dword [ebp + eax*4 - 0x258]
call esi
inc dword [ebp - 0x130]
add ebx, 0x14
cmp dword [ebp - 0x130], 0x20
jb 0x10a65fb
jmp 0x10a6351
push 0x10aa62b
push esi
call fcn.010b66c0
mov dword [ebp - 0x188], eax
cmp eax, esi
jne 0x10a66dd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x130]
push dword [ebp - 0x170]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [ecx], eax
call esi
push dword [ebp - 0x168]
call esi
push dword [ebp - 0x138]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
and dword [ebp - 0x130], 0
lea ebx, [ebp - 0x5c8]
push dword [ebx]
call edi
mov eax, dword [ebp - 0x130]
push dword [ebp + eax*4 - 0x258]
call esi
inc dword [ebp - 0x130]
add ebx, 0x14
cmp dword [ebp - 0x130], 0x20
jb 0x10a667d
jmp 0x10a610d
cmp byte [ebp - 0x131], 0
mov byte [ebp - 0x132], 0
je 0x10a66c4
lea ecx, [ebp - 0x12c]
call fcn.010ab2b6
jmp 0x10a66d1
mov eax, dword [ebp - 0x19c]
mov ecx, 0x200000
mul ecx
mov dword [ebp - 0x140], edx
mov dword [ebp - 0x144], eax
mov eax, dword [0x111024c]
mov edi, 0x111024c
cmp eax, edi
je 0x10a6752
test byte [eax + 0x1c], 4
je 0x10a6721
cmp byte [eax + 0x19], 4
jb 0x10a6721
movzx ecx, byte [ebp - 0x131]
push ecx
movzx ecx, byte [ebp - 0x132]
push ecx
push 0x100ab50
push 0x174
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01083f04
mov eax, dword [0x111024c]
cmp eax, edi
je 0x10a6752
test byte [eax + 0x1c], 4
je 0x10a6752
cmp byte [eax + 0x19], 4
jb 0x10a6752
push dword [ebp - 0x140]
push dword [ebp - 0x144]
push 0x100ab50
push 0x175
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010194e4
lea ecx, [ebp - 0x198]
call fcn.0109bb81
push dword [ebp - 0x140]
push dword [ebp - 0x144]
push esi
push esi
push dword [ebp - 0x178]
call dword [ebp - 0x174]
test al, al
jne 0x10a67b5
mov dword [ebp - 0x148], 1
mov eax, dword [0x111024c]
cmp eax, edi
je 0x10a6c8a
test byte [eax + 0x1c], 4
je 0x10a6c8a
cmp byte [eax + 0x19], 2
jb 0x10a6c8a
push 0x100ab50
push 0x176
jmp 0x10a6da9
lea eax, [ebp - 0x1c8]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
mov esi, dword [0x111024c]
mov byte [ebp - 0x13a], 0
and dword [ebp - 0x15c], 0
lea eax, [ebp - 0x6d8]
mov byte [ebp - 0x139], 1
mov dword [ebp - 0x160], eax
lea edi, [ebp - 0x5cc]
mov ebx, dword [ebp - 0x15c]
cmp dword [ebp + ebx - 0x358], 0
je 0x10a69d4
push 1
lea eax, [ebp - 0x14c]
push eax
lea eax, [edi - 0xc]
push eax
push dword [ebp - 0x138]
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
test eax, eax
je 0x10a6d54
cmp byte [ebp - 0x132], 0
je 0x10a68bc
mov edx, dword [edi - 4]
mov eax, dword [ebp - 0x14c]
mov esi, dword [edi]
xor ecx, ecx
add eax, edx
adc ecx, esi
mov dword [ebp - 0x184], edx
mov dword [ebp - 0x180], esi
cmp eax, dword [ebp - 0x144]
jne 0x10a6865
mov byte [ebp - 0x17c], 1
cmp ecx, dword [ebp - 0x140]
je 0x10a686c
mov byte [ebp - 0x17c], 0
push dword [ebp - 0x130]
lea eax, [ebp - 0x1b0]
push eax
push dword [ebp - 0x170]
push dword [ebp - 0x168]
push dword [ebp - 0x188]
push dword [ebp - 0x17c]
push dword [ebp - 0x14c]
push dword [ebp + ebx - 0x2d8]
push dword [ebp - 0x16c]
call fcn.010a5cdb
mov dword [ebp - 0x148], eax
test eax, eax
jne 0x10a6c8a
jmp 0x10a69c0
mov ebx, dword [ebp - 0x160]
mov eax, dword [ebx + 4]
cmp eax, dword [ebp - 0x18c]
jl 0x10a68ed
jg 0x10a68d9
mov eax, dword [ebx]
cmp eax, dword [ebp - 0x190]
jb 0x10a68ed
push 0x100afd4
push 0x1ff9
push 0x100ac00
call fcn.0107b644
mov ecx, dword [ebp - 0x14c]
xor eax, eax
add ecx, dword [ebx]
adc eax, dword [ebx + 4]
cmp eax, dword [ebp - 0x18c]
jl 0x10a6916
mov eax, dword [ebp - 0x190]
jg 0x10a690e
cmp ecx, eax
jbe 0x10a6916
sub eax, dword [ebx]
mov dword [ebp - 0x14c], eax
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a694e
test byte [eax + 0x1c], 4
je 0x10a694e
cmp byte [eax + 0x19], 5
jb 0x10a694e
push dword [edi - 4]
push dword [edi]
push dword [ebp - 0x14c]
push 0x100ab50
push 0x177
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01065870
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x14c]
mov eax, dword [ebp - 0x15c]
push dword [ebp + eax - 0x2d8]
push dword [ebp - 0x16c]
call fcn.010a00b7
mov esi, dword [0x111024c]
cmp esi, 0x111024c
je 0x10a69c6
test byte [esi + 0x1c], 4
je 0x10a69c6
cmp byte [esi + 0x19], 5
jb 0x10a69c6
push dword [ebp - 8]
mov eax, dword [ebx]
push dword [ebp - 0xc]
mov edx, dword [ebx + 4]
push dword [ebp - 0x10]
mov cl, 0x20
push dword [ebp - 0x14]
push dword [ebp - 0x14c]
push dword [ebx]
call fcn.01103130
push eax
push 0x100ab50
push 0x178
push dword [esi + 0x14]
push dword [esi + 0x10]
call fcn.0109b8c3
mov esi, dword [0x111024c]
mov eax, dword [ebp - 0x15c]
and dword [ebp + eax - 0x358], 0
cmp byte [ebp - 0x13a], 0
jne 0x10a6bed
cmp byte [ebp - 0x132], 0
je 0x10a6adb
mov ebx, dword [ebp - 0x154]
cmp ebx, dword [ebp - 0x144]
jne 0x10a6a4b
mov eax, dword [ebp - 0x150]
cmp eax, dword [ebp - 0x140]
jne 0x10a6a4b
cmp esi, 0x111024c
je 0x10a6a3f
test byte [esi + 0x1c], 4
je 0x10a6a3f
cmp byte [esi + 0x19], 4
jb 0x10a6a3f
push dword [ebp - 0x164]
push 0x100ab50
push 0x179
push dword [esi + 0x14]
push dword [esi + 0x10]
call fcn.01019633
mov esi, dword [0x111024c]
mov byte [ebp - 0x13a], 1
jmp 0x10a6bed
mov eax, dword [ebp - 0x150]
mov edx, 0x10000
mov ecx, ebx
add ecx, edx
mov dword [ebp - 0x180], eax
mov dword [edi], eax
adc eax, 0
cmp eax, dword [ebp - 0x140]
mov dword [ebp - 0x184], ebx
mov dword [edi - 4], ebx
mov dword [ebp - 0x158], edx
jl 0x10a6a94
jg 0x10a6a86
cmp ecx, dword [ebp - 0x144]
jbe 0x10a6a94
mov edx, dword [ebp - 0x144]
sub edx, ebx
mov dword [ebp - 0x158], edx
mov esi, dword [ebp - 0x15c]
lea eax, [edi - 0xc]
push eax
push edx
push dword [ebp + esi - 0x2d8]
push dword [ebp - 0x138]
call fcn.010a0190
add ebx, dword [ebp - 0x158]
mov dword [ebp + esi - 0x358], 1
adc dword [ebp - 0x150], 0
mov byte [ebp - 0x139], 0
mov dword [ebp - 0x154], ebx
jmp 0x10a6b96
mov esi, dword [ebp - 0x15c]
push 0
lea eax, [edi - 0xc]
push eax
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 0x1a8]
push eax
lea eax, [ebp - 0x158]
push eax
push dword [ebp - 0x160]
lea ecx, [ebp - 0x12c]
push dword [ebp + esi - 0x2d8]
call fcn.010ae0c6
test al, al
jne 0x10a6b53
mov esi, dword [0x111024c]
cmp esi, 0x111024c
je 0x10a6a3f
test byte [esi + 0x1c], 4
je 0x10a6a3f
cmp byte [esi + 0x19], 4
jb 0x10a6a3f
push dword [ebp - 0x164]
push 0x100ab50
push 0x17a
jmp 0x10a6a2e
cmp byte [ebp - 0x131], 0
mov dword [ebp + esi - 0x358], 1
mov byte [ebp - 0x139], 0
je 0x10a6b7b
lea ecx, [ebp - 0x12c]
call fcn.010ab347
jmp 0x10a6b88
mov eax, dword [ebp - 0x1a8]
mov ecx, 0x200000
mul ecx
mov dword [ebp - 0x154], eax
mov ebx, eax
mov dword [ebp - 0x150], edx
lea eax, [ebp - 0x1d8]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
mov ax, word [ebp - 0x1cc]
cmp ax, word [ebp - 0x1bc]
je 0x10a6be7
push dword [ebp - 0x140]
push dword [ebp - 0x144]
push dword [ebp - 0x150]
push ebx
push dword [ebp - 0x178]
call dword [ebp - 0x174]
test al, al
je 0x10a6d71
lea eax, [ebp - 0x1c8]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
mov esi, dword [0x111024c]
add dword [ebp - 0x15c], 4
add dword [ebp - 0x160], 8
add edi, 0x14
cmp dword [ebp - 0x15c], 0x80
jb 0x10a67ef
cmp byte [ebp - 0x139], 0
je 0x10a67cf
mov ecx, dword [ebp - 0x140]
mov eax, dword [ebp - 0x144]
push ecx
push eax
push ecx
push eax
push dword [ebp - 0x178]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x150], ecx
call dword [ebp - 0x174]
cmp dword [ebp - 0x148], 0
jne 0x10a6c8a
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a6c8a
test byte [eax + 0x1c], 4
je 0x10a6c8a
cmp byte [eax + 0x19], 4
jb 0x10a6c8a
mov ecx, dword [ebp - 0x16c]
push dword [ecx + 0xc]
push dword [ecx + 8]
push dword [ecx + 4]
push dword [ecx]
push 0x100ab50
push 0x17c
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01019e4d
cmp dword [ebp - 0x148], 0
mov eax, dword [ebp - 0x1a4]
mov ecx, dword [ebp - 0x154]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x150]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x1ac]
mov ecx, dword [ebp - 0x144]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x140]
mov dword [eax + 4], ecx
je 0x10a6cde
push 0x20
lea eax, [ebp - 0x358]
push eax
lea eax, [ebp - 0x5d8]
push eax
push 0xffffffffffffffff
push dword [ebp - 0x138]
call fcn.0109bdb7
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
lea eax, [ebp - 0x5c8]
xor ebx, ebx
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x16c]
push dword [eax]
call edi
push dword [ebp + ebx*4 - 0x258]
call esi
add dword [ebp - 0x16c], 0x14
inc ebx
cmp ebx, 0x20
jb 0x10a6cf8
cmp byte [ebp - 0x132], 0
je 0x10a6db9
push 0x10aa644
push 0
push dword [ebp - 0x188]
call fcn.010b66d0
push dword [ebp - 0x170]
call esi
push dword [ebp - 0x168]
call esi
push dword [ebp - 0x138]
call edi
jmp 0x10a6ddd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x130]
mov dword [ecx], eax
mov dword [ebp - 0x148], 4
jmp 0x10a6c8a
mov dword [ebp - 0x148], 1
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a6c8a
test byte [eax + 0x1c], 4
je 0x10a6c8a
cmp byte [eax + 0x19], 2
jb 0x10a6c8a
push 0x100ab50
push 0x17b
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0101894a
jmp 0x10a6c8a
cmp byte [ebp - 0x131], 0
je 0x10a6dca
push dword [ebp - 0x1b4]
call esi
push dword [ebp - 0x1a0]
call esi
lea ecx, [ebp - 0x12c]
call fcn.010aa7d9
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10a6351
test byte [eax + 0x1c], 4
je 0x10a6351
cmp byte [eax + 0x19], 4
jb 0x10a6351
push 0x100ab50
push 0x17d
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0101894a
jmp 0x10a6351