Function at 0x4368a9
Capabilities:
Print debug messages

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x2180
call fcn.004a98b0
mov eax, dword [0x4dd52c]
push ebx
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push esi
push edi
xor esi, esi
mov dword [ebp - 0x2150], eax
xor eax, eax
cmp ebx, esi
mov word [ebp - 0x1048], si
mov ecx, 0x3ff
lea edi, [ebp - 0x1046]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x216c], esi
stosw word es:[edi], ax
je 0x4369bb
cmp dword [ebx + 0x1dfa8], 1
jne 0x4369bb
cmp dword [ebx + 0x1dfac], esi
je 0x4369bb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x216c], eax
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4060b0
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x28
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x43699d
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4369bb
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
push ebx
call fcn.0042ee90
test eax, eax
je 0x4387ac
push dword [ebp - 0x2150]
call fcn.0042ee90
test eax, eax
je 0x4387ac
test byte [ebx + 0x51dc], 4
je 0x4386ac
cmp dword [ebx + 0x51e4], esi
jbe 0x436a0d
push ebx
call fcn.0045a72b
test eax, eax
jne 0x436a0d
push ebx
call fcn.0045a755
test eax, eax
jne 0x436a0d
push esi
push esi
push ebx
call fcn.00449d95
mov eax, dword [ebp - 0x2150]
mov edx, dword [ebx + 0x16290]
lea ecx, [eax + 0x16290]
mov dword [ecx], edx
mov ecx, dword [ecx]
mov edx, dword [ebx + 0x19a18]
mov dword [eax + 0x5250], ecx
mov dword [eax + 0x16710], ecx
mov dword [eax + 0x19a18], edx
mov ecx, dword [ebx + 0x524c]
mov dword [eax + 0x524c], ecx
mov ecx, dword [ebx + 0x1670c]
mov dword [eax + 0x1670c], ecx
mov ecx, dword [ebx + 0x1df78]
mov dword [eax + 0x1df78], ecx
push 5
pop ecx
lea esi, [ebx + 0x1df7c]
lea edi, [eax + 0x1df7c]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x19754]
mov dword [eax + 0x19754], ecx
mov ecx, dword [ebx + 0x19758]
mov dword [eax + 0x19758], ecx
mov cx, word [ebx + 0x1625c]
mov word [eax + 0x1625c], cx
mov ecx, dword [ebx + 0x51e4]
mov dword [eax + 0x51e4], ecx
mov ecx, dword [ebx + 0x51e8]
mov dword [eax + 0x51e8], ecx
mov cx, word [ebx + 0x162d4]
mov word [eax + 0x162d4], cx
mov ecx, dword [ebx + 0x162ec]
mov dword [eax + 0x162ec], ecx
mov ecx, dword [ebx + 0x162f0]
mov dword [eax + 0x162f0], ecx
mov ecx, dword [ebx + 0x162f4]
mov dword [eax + 0x162f4], ecx
push 0x40
pop ecx
lea esi, [ebx + 0x162fc]
lea edi, [eax + 0x162fc]
rep movsd dword es:[edi], dword [esi]
mov cx, word [ebx + 0x163fc]
mov word [eax + 0x163fc], cx
mov ecx, dword [ebx + 0x16404]
mov dword [eax + 0x16404], ecx
mov ecx, dword [ebx + 0x16408]
mov dword [eax + 0x16408], ecx
mov cx, word [ebx + 0x16624]
mov word [eax + 0x16624], cx
mov cx, word [ebx + 0x16626]
mov word [eax + 0x16626], cx
lea edx, [eax + 0x16414]
lea esi, [ebx + 0x16414]
mov ecx, 0x83
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov dword [eax + 0x16620], edx
mov cx, word [ebx + 0x16624]
mov word [eax + 0x16624], cx
mov cx, word [ebx + 0x16626]
mov word [eax + 0x16626], cx
push 6
lea esi, [ebx + 0x16628]
lea edi, [eax + 0x16628]
pop ecx
rep movsd dword es:[edi], dword [esi]
mov cx, word [ebx + 0x16640]
mov word [eax + 0x16640], cx
mov cx, word [ebx + 0x16642]
mov word [eax + 0x16642], cx
mov cx, word [ebx + 0x56]
mov word [eax + 0x16644], cx
mov cx, word [ebx + 0x54]
mov word [eax + 0x16646], cx
mov ecx, dword [ebx + 0x188ec]
mov dword [eax + 0x188ec], ecx
mov ecx, dword [ebx + 0x188f0]
mov dword [eax + 0x188f0], ecx
mov ecx, dword [ebx + 0x188f4]
mov dword [eax + 0x188f4], ecx
mov ecx, dword [ebx + 0x188f8]
mov dword [eax + 0x188f8], ecx
mov cx, word [ebx + 0x188fc]
mov word [eax + 0x188fc], cx
mov ecx, dword [ebx + 0x18900]
mov dword [eax + 0x18900], ecx
mov ecx, dword [ebx + 0x18904]
mov dword [eax + 0x18904], ecx
mov cx, word [ebx + 0x18908]
mov word [eax + 0x18908], cx
mov ecx, dword [ebx + 0x1890c]
mov dword [eax + 0x1890c], ecx
mov ecx, dword [ebx + 0x18914]
mov dword [eax + 0x18914], ecx
mov ecx, dword [ebx + 0x18910]
mov dword [eax + 0x18910], ecx
mov ecx, dword [ebx + 0x18918]
mov dword [eax + 0x18918], ecx
mov ecx, dword [ebx + 0x188b4]
mov dword [eax + 0x188b4], ecx
mov ecx, dword [ebx + 0x188b8]
mov dword [eax + 0x188b8], ecx
mov ecx, dword [ebx + 0x188bc]
mov dword [eax + 0x188bc], ecx
mov ecx, dword [ebx + 0x188d8]
mov dword [eax + 0x188d8], ecx
mov ecx, dword [ebx + 0x188dc]
mov dword [eax + 0x188dc], ecx
mov ecx, dword [ebx + 0x188e4]
mov dword [eax + 0x188e4], ecx
mov ecx, dword [ebx + 0x188e0]
mov dword [eax + 0x188e0], ecx
mov ecx, dword [ebx + 0x188e8]
mov dword [eax + 0x188e8], ecx
mov ecx, dword [ebx + 0x199c4]
mov dword [eax + 0x199c4], ecx
lea eax, [ebx + 0x188cc]
push eax
push ebx
call fcn.0049d07b
mov cl, byte [ebx + 0x18932]
mov eax, dword [ebp - 0x2150]
mov byte [eax + 0x18932], cl
mov cl, byte [ebx + 0x18933]
mov byte [eax + 0x18933], cl
mov ecx, dword [ebx + 0x19778]
mov dword [eax + 0x19778], ecx
mov ecx, dword [ebx + 0x1dacc]
mov dword [eax + 0x1dacc], ecx
mov cl, byte [ebx + 0x199fe]
mov byte [eax + 0x199fe], cl
push 5
pop ecx
lea edi, [eax + 0x19a00]
lea esi, [ebx + 0x19a00]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov ecx, dword [ebx + 0x1df90]
mov dword [eax + 0x1df90], ecx
mov ecx, dword [ebx + 0x1e7a8]
push ebx
mov dword [eax + 0x1e7a8], ecx
call fcn.0043605e
mov esi, dword [ebp - 0x2150]
push esi
call fcn.0043619c
mov edi, 0x104
push edi
lea eax, [ebx + 0x1e59c]
push eax
lea eax, [esi + 0x1e59c]
push eax
call dword [sym.imp.msvcrt.dll_wcsncpy]
push 0x20
lea eax, [ebx + 0x1e7ac]
push eax
lea eax, [esi + 0x1e7ac]
push eax
call dword [sym.imp.msvcrt.dll_wcsncpy]
add esp, 0x18
push ebx
call fcn.0045e5e0
push esi
call fcn.0045e61c
mov eax, dword [ebx + 0x1e598]
mov dword [esi + 0x1e598], eax
mov eax, dword [ebx + 0x1e068]
mov dword [esi + 0x1e068], eax
push edi
lea eax, [ebx + 0x1e06c]
push eax
lea eax, [esi + 0x1e06c]
push eax
call dword [sym.imp.msvcrt.dll_strncpy]
push edi
lea eax, [ebx + 0x1e170]
push eax
lea eax, [esi + 0x1e170]
push eax
call dword [sym.imp.msvcrt.dll_strncpy]
push edi
lea eax, [ebx + 0x1e274]
push eax
lea eax, [esi + 0x1e274]
push eax
call dword [sym.imp.msvcrt.dll_strncpy]
mov eax, dword [ebx + 0x1e378]
mov dword [esi + 0x1e378], eax
mov eax, dword [ebx + 0x1dfb0]
mov dword [esi + 0x1dfb0], eax
mov eax, dword [ebx + 0x1dfb4]
mov dword [esi + 0x1dfb4], eax
mov eax, dword [ebx + 0x1ea00]
mov dword [esi + 0x1ea00], eax
mov eax, dword [ebx + 0x1ea04]
mov dword [esi + 0x1ea04], eax
mov eax, dword [ebx + 0x1dfb8]
mov dword [esi + 0x1dfb8], eax
mov eax, dword [ebx + 0x1dfbc]
mov dword [esi + 0x1dfbc], eax
mov eax, dword [ebx + 0x1dfc0]
mov dword [esi + 0x1dfc0], eax
mov eax, dword [ebx + 0x1dfc4]
mov dword [esi + 0x1dfc4], eax
mov eax, dword [ebx + 0x1dfc8]
mov dword [esi + 0x1dfc8], eax
mov eax, dword [ebx + 0x1d8bc]
mov dword [esi + 0x1d8bc], eax
mov eax, dword [ebx + 0x1d8c0]
mov dword [esi + 0x1d8c0], eax
mov eax, dword [ebx + 0x1dfcc]
mov dword [esi + 0x1dfcc], eax
mov eax, dword [ebx + 0x1dfd0]
mov dword [esi + 0x1dfd0], eax
mov eax, dword [ebx + 0x1dfd4]
mov dword [esi + 0x1dfd4], eax
mov eax, dword [ebx + 0x1dfd8]
mov dword [esi + 0x1dfd8], eax
mov eax, dword [ebx + 0x1dfdc]
mov dword [esi + 0x1dfdc], eax
mov eax, dword [ebx + 0x1dfe0]
add esp, 0x24
mov dword [esi + 0x1dfe0], eax
mov edx, ebx
push 0x10
lea eax, [esi + 0x1e024]
sub edx, esi
lea ecx, [ebx + 0x1dfe4]
pop esi
mov edi, dword [edx + eax]
mov dword [eax], edi
mov edi, dword [ecx]
mov dword [eax - 0x40], edi
add eax, 4
add ecx, 4
dec esi
jne 0x436ebd
mov ecx, dword [ebx + 0x1e7f0]
mov eax, dword [ebp - 0x2150]
mov dword [eax + 0x1e7f0], ecx
lea edi, [eax + 0x1d8ac]
lea esi, [ebx + 0x1d8ac]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x1d8a4]
mov dword [eax + 0x1d8a4], ecx
mov ecx, dword [ebx + 0x1d8a8]
mov dword [eax + 0x1d8a8], ecx
mov ecx, dword [ebx + 0x1d8b8]
mov dword [eax + 0x1d8b8], ecx
mov ecx, dword [ebx + 0x1dcd8]
mov dword [eax + 0x1dcd8], ecx
mov ecx, dword [ebx + 0x1dcdc]
mov dword [eax + 0x1dcdc], ecx
mov ecx, dword [ebx + 0x1df94]
mov dword [eax + 0x1df94], ecx
mov ecx, dword [ebx + 0x1df98]
mov dword [eax + 0x1df98], ecx
mov ecx, dword [ebx + 0x1df9c]
mov dword [eax + 0x1df9c], ecx
mov ecx, dword [ebx + 0x1ea08]
mov dword [eax + 0x1ea08], ecx
mov ecx, dword [ebx + 0x1e58c]
mov dword [eax + 0x1e58c], ecx
mov ecx, dword [ebx + 0x1e380]
mov dword [eax + 0x1e380], ecx
mov ecx, dword [ebx + 0x1e37c]
mov dword [eax + 0x1e37c], ecx
push 0x104
lea ecx, [ebx + 0x1e384]
push ecx
add eax, 0x1e384
push eax
call dword [sym.imp.msvcrt.dll_wcsncpy]
mov eax, dword [ebp - 0x2150]
lea edi, [eax + 0x1a260]
lea esi, [ebx + 0x1a260]
mov ecx, 0xc09
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x1e7f4]
mov edi, dword [sym.imp.msvcrt.dll_wcsncpy]
mov dword [eax + 0x1e7f4], ecx
push 0x104
lea ecx, [ebx + 0x1e7f8]
push ecx
add eax, 0x1e7f8
push eax
call edi
mov eax, dword [ebx + 0x1e064]
mov esi, dword [ebp - 0x2150]
mov dword [esi + 0x1e064], eax
mov eax, dword [ebx + 0x1e7a4]
mov dword [esi + 0x1e7a4], eax
mov eax, dword [ebx + 0x1e7ec]
mov dword [esi + 0x1e7ec], eax
push 0x104
lea eax, [ebx + 0x1dcec]
push eax
lea eax, [esi + 0x1dcec]
push eax
call edi
push 0x41
lea eax, [ebx + 0x1def4]
push eax
lea eax, [esi + 0x1def4]
push eax
call edi
push 0x104
lea eax, [ebx + 0x1d8c4]
push eax
lea eax, [esi + 0x1d8c4]
push eax
call edi
mov ax, word [esi + 0xdd0]
mov word [ebp - 0x217c], ax
mov ax, word [esi + 0xdb1]
add esp, 0x3c
mov word [ebp - 0x2178], ax
mov ax, word [esi + 0xd8e]
mov word [ebp - 0x2180], ax
mov ax, word [esi + 0x14c]
mov word [ebp - 0x2170], ax
mov ax, word [esi + 0x13a]
mov word [ebp - 0x2174], ax
mov ax, word [esi + 0x9e1]
push 0x40
mov word [ebp - 0x2168], ax
pop ecx
xor eax, eax
lea edi, [ebp - 0x114a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0x10
pop ecx
xor eax, eax
add esi, 0x1747
lea edi, [ebp - 0x46]
rep stosd dword es:[edi], eax
mov al, byte [esi - 0xa2e]
push 0x40
mov byte [ebp - 0x2161], al
mov al, byte [esi - 0xa2d]
pop ecx
lea edi, [ebp - 0x114c]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2162], al
mov eax, dword [ebp - 0x2150]
push 0x10
lea esi, [eax + 0xac7]
pop ecx
lea edi, [ebp - 0x48]
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov ecx, 0x9c9
lea esi, [ebx + 0xe0]
lea edi, [eax + 0xe0]
rep movsd dword es:[edi], dword [esi]
cmp dword [ebx + 0x1dfa8], 1
jne 0x43722f
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x43722f
cmp eax, 3
mov esi, 0x800
jb 0x437234
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
movsx eax, word [ebx + 0x9e1]
push eax
push 0x4078c0
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437234
cmp eax, 3
jb 0x437234
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x43720f
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x437234
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
jmp 0x437234
mov esi, 0x800
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437360
cmp eax, 3
jb 0x437360
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [ebp - 0x2150]
movsx eax, word [eax + 0x9e1]
push eax
push 0x407878
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437360
cmp eax, 3
jb 0x437360
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x437342
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x437360
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437483
cmp eax, 3
jb 0x437483
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
movsx eax, word [ebx + 0x62]
push eax
push 0x407830
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437483
cmp eax, 3
jb 0x437483
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x437465
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x437483
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4375ac
cmp eax, 3
jb 0x4375ac
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [ebp - 0x2150]
movsx eax, word [eax + 0x62]
push eax
push 0x4077e8
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4375ac
cmp eax, 3
jb 0x4375ac
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x43758e
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4375ac
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4376d2
cmp eax, 3
jb 0x4376d2
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
movsx eax, word [ebx + 0x57a]
push eax
push 0x407798
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4376d2
cmp eax, 3
jb 0x4376d2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x4376b4
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4376d2
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4377fe
cmp eax, 3
jb 0x4377fe
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [ebp - 0x2150]
movsx eax, word [eax + 0x57a]
push eax
push 0x407748
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4377fe
cmp eax, 3
jb 0x4377fe
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x4377e0
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4377fe
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437924
cmp eax, 3
jb 0x437924
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
movsx eax, word [ebx + 0x5da]
push eax
push 0x4076f0
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437924
cmp eax, 3
jb 0x437924
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x437906
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x437924
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437a50
cmp eax, 3
jb 0x437a50
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [ebp - 0x2150]
movsx eax, word [eax + 0x5da]
push eax
push 0x407698
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437a50
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437a50
cmp eax, 3
jb 0x437a50
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x437a32
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x437a50
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
mov edi, dword [ebp - 0x2150]
cmp word [edi + 0x62], 1
jne 0x437a95
mov ax, word [ebx + 0x62]
cmp ax, 3
je 0x437a6d
cmp ax, 2
jne 0x437a95
push 7
push edi
call fcn.004a53d4
cmp eax, 1
jne 0x437a8d
cmp word [edi + 0x9e7], ax
je 0x437a8d
and word [edi + 0x57a], 0
jmp 0x437a95
and word [edi + 0x5da], 0
cmp dword [ebx + 0x1dfa8], 1
jne 0x437ced
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437bc1
cmp eax, 3
jb 0x437bc1
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [ebp - 0x2150]
movsx eax, word [eax + 0x57a]
push eax
push 0x407640
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437ced
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437bc1
cmp eax, 3
jb 0x437bc1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x437ba3
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x437bc1
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437ced
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437ced
cmp eax, 3
jb 0x437ced
and word [ebp - 0x214c], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x214a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [ebp - 0x2150]
movsx eax, word [eax + 0x5da]
push eax
push 0x4075e8
lea eax, [ebp - 0x214c]
push esi
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x437ced
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x437ced
cmp eax, 3
jb 0x437ced
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x214c]
push eax
movzx eax, word [ebp - 0x2152]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push esi
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x437ccf
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x437ced
lea esi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [esi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [esi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
mov eax, dword [ebp - 0x2150]
mov cx, word [ebp - 0x217c]
mov word [eax + 0xdd0], cx
mov cx, word [ebp - 0x2178]
mov word [eax + 0xdb1], cx
mov cx, word [ebp - 0x2180]
mov word [eax + 0xd8e], cx
mov cx, word [ebp - 0x2170]
mov word [eax + 0x14c], cx
mov cx, word [ebp - 0x2174]
mov word [eax + 0x13a], cx
mov cx, word [ebp - 0x2168]
mov word [eax + 0x9e1], cx
mov cl, byte [ebp - 0x2161]
mov byte [eax + 0xd19], cl
mov cl, byte [ebp - 0x2162]
mov byte [eax + 0xd1a], cl
cmp dword [ebx + 0x1d8a4], 1
je 0x437e0d
push 0x85
mov esi, eax
push esi
call fcn.004a53d4
cmp eax, 1
jne 0x437de4
cmp byte [esi + 0xd19], 0
jne 0x437e0d
lea eax, [ebp - 0x114c]
push eax
lea eax, [ebx + 0x1747]
push eax
call dword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
pop ecx
pop ecx
je 0x437dbf
mov edi, dword [ebp - 0x2150]
push 0x40
add edi, 0x1747
pop ecx
lea esi, [ebp - 0x114c]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebx + 0xac7]
push eax
call dword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
pop ecx
pop ecx
je 0x437e0d
mov edi, dword [ebp - 0x2150]
add edi, 0xac7
jmp 0x437e04
mov eax, dword [ebp - 0x2150]
push 0x40
pop ecx
lea esi, [ebp - 0x114c]
lea edi, [eax + 0x1747]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
lea edi, [eax + 0xac7]
push 0x10
lea esi, [ebp - 0x48]
pop ecx
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0x2150]
mov cx, word [ebx + 0x18934]
mov word [eax + 0x18934], cx
mov ecx, dword [ebx + 0x1893c]
mov dword [eax + 0x1893c], ecx
mov ecx, dword [ebx + 0x18938]
mov dword [eax + 0x18938], ecx
lea edi, [eax + 0x189cc]
lea esi, [ebx + 0x189cc]
mov ecx, 0x360
rep movsd dword es:[edi], dword [esi]
mov dword [eax + 0x189f4], eax
or byte [eax + 0x51de], 0x10
mov edx, dword [eax + 0x51dc]
mov ecx, dword [ebx + 0x51dc]
and ecx, 0x1094104
or ecx, edx
mov dword [eax + 0x51dc], ecx
mov edx, dword [ebx + 0x51dc]
and edx, 0x4000000
or edx, ecx
mov dword [eax + 0x51dc], edx
mov eax, dword [eax + 0x5014]
test eax, eax
je 0x437ead
mov esi, dword [ebp - 0x2150]
push eax
push 0
push dword [esi + 0x500c]
call dword [sym.imp.KERNEL32.dll_HeapFree]
and dword [esi + 0x5014], 0
mov eax, dword [ebx + 0x5014]
test eax, eax
je 0x437fe1
push eax
call dword [sym.imp.msvcrt.dll_wcslen]
mov edi, dword [ebp - 0x2150]
pop ecx
lea eax, [eax + eax + 2]
push eax
push 0
push dword [edi + 0x500c]
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
test eax, eax
mov dword [edi + 0x5014], eax
jne 0x437fd0
cmp dword [ebx + 0x1dfa8], 1
jne 0x43889f
cmp dword [ebx + 0x1dfac], eax
je 0x43889f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
sub esi, dword [ebp - 0x216c]
xor eax, eax
test esi, esi
mov ecx, 0x400
lea edi, [ebp - 0x1048]
mov dword [ebp - 0x2168], esi
fild dword [ebp - 0x2168]
rep stosd dword es:[edi], eax
jge 0x437f43
fadd dword [0x4060a4]
movzx eax, word [ebp - 0x2152]
push ecx
push ecx
fmul dword [0x4060a0]
fstp qword [esp]
push 0x4075a0
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x405f70
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x30
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x437fb6
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x43889f
lea esi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [esi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [esi]
jmp 0x438896
push dword [ebx + 0x5014]
push eax
call dword [sym.imp.msvcrt.dll_wcscpy]
pop ecx
pop ecx
jmp 0x437fe7
mov edi, dword [ebp - 0x2150]
mov eax, dword [ebx + 0x51dc]
and eax, 0x8000000
or dword [edi + 0x51dc], eax
lea eax, [ebx + 4]
push eax
lea eax, [edi + 4]
push eax
push edi
call fcn.0043391a
test eax, eax
je 0x438296
cmp dword [ebx + 0x1dfa8], 1
mov esi, 0x406b00
jne 0x4380e3
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4380e3
cmp eax, 3
jb 0x4380e3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
push 0x407568
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x2152]
push esi
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x4380bf
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4380dd
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
mov edi, dword [ebp - 0x2150]
cmp byte [edi + 0x23a4], 0
jne 0x438520
cmp dword [ebx + 0x1dfa8], 1
jne 0x438284
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x4381ba
cmp eax, 3
jb 0x4381ba
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
push 0x407500
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x2152]
push esi
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x43819c
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4381ba
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x438284
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x438284
cmp eax, 3
jb 0x438284
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
push 0x4074c0
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x2152]
push esi
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x438266
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x438284
lea esi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [esi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [esi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
mov eax, dword [ebp - 0x2150]
or byte [eax + 0x51de], 0x80
jmp 0x438520
cmp byte [edi + 0x23a4], 0
je 0x438520
cmp dword [ebx + 0x1dfa8], 1
mov esi, 0x406b00
jne 0x43843c
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x438372
cmp eax, 3
jb 0x438372
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
push 0x407458
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x2152]
push esi
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x438354
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x438372
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [ebx + 0x1dfa8], 1
jne 0x43843c
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x43843c
cmp eax, 3
jb 0x43843c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
push 0x407418
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x2152]
push esi
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x43841e
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x43843c
lea edi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
test byte [ebx + 0x51de], 0x80
je 0x438520
mov eax, dword [ebp - 0x2150]
and byte [eax + 0x51de], 0x7f
cmp dword [ebx + 0x1dfa8], 1
jne 0x438520
mov eax, dword [ebx + 0x1dfac]
test eax, eax
je 0x438520
cmp eax, 3
jb 0x438520
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
push 0x4073dc
mov ecx, 0x400
lea edi, [ebp - 0x1048]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x2152]
push esi
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x438502
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x438520
lea esi, [ebx + 0x1dfa4]
push 0x4060a8
push dword [esi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [esi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
mov eax, dword [ebx + 0x51f4]
mov esi, dword [ebp - 0x2150]
cmp eax, dword [esi + 0x51f4]
jne 0x43857e
mov eax, dword [ebx + 0x51f8]
cmp eax, dword [esi + 0x51f8]
jne 0x43857e
mov eax, dword [esi + 0x5214]
test eax, eax
je 0x438562
push eax
push 0
push dword [esi + 0x500c]
call dword [sym.imp.KERNEL32.dll_HeapFree]
and dword [esi + 0x5214], 0
mov eax, dword [ebx + 0x5214]
test eax, eax
je 0x43857e
push eax
push dword [esi + 0x500c]
call fcn.0047c9a9
mov dword [esi + 0x5214], eax
mov eax, dword [ebp - 0x2150]
lea ecx, [ebx + 0x5218]
mov edx, dword [ecx]
mov dword [eax + 0x5218], edx
and dword [ecx], 0
mov ecx, dword [ebx + 0x19a1c]
mov dword [eax + 0x19a1c], ecx
mov ecx, dword [ebx + 0x19e38]
mov dword [eax + 0x19e38], ecx
mov ecx, dword [ebx + 0x19e3c]
mov dword [eax + 0x19e3c], ecx
mov ecx, dword [ebx + 0x19e40]
mov dword [eax + 0x19e40], ecx
mov ecx, dword [ebx + 0x1a25c]
mov dword [eax + 0x1a25c], ecx
mov edx, 0x82
lea edi, [eax + 0x1a260]
mov ecx, 0xc09
lea esi, [ebx + 0x1a260]
rep movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x1d284]
mov ecx, edx
lea esi, [ebx + 0x1d284]
rep movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x1d48c]
mov ecx, edx
lea esi, [ebx + 0x1d48c]
rep movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x1d694]
mov ecx, edx
lea esi, [ebx + 0x1d694]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x1d89c]
mov dword [eax + 0x1d89c], ecx
mov ecx, dword [ebx + 0x1d8a0]
mov dword [eax + 0x1d8a0], ecx
mov ecx, dword [ebx + 0x199f4]
mov dword [eax + 0x199f4], ecx
mov ecx, dword [ebx + 0x199f8]
mov dword [eax + 0x199f8], ecx
mov ecx, dword [ebx + 0x1a254]
mov dword [eax + 0x1a254], ecx
mov cx, word [ebx + 0x1dce0]
mov word [eax + 0x1dce0], cx
mov cx, word [ebx + 0x1dce2]
mov word [eax + 0x1dce2], cx
mov cl, byte [ebx + 0x1dce4]
mov byte [eax + 0x1dce4], cl
mov ecx, dword [ebx + 0x1dce8]
push eax
mov dword [eax + 0x1dce8], ecx
call fcn.004337d1
lea eax, [ebx + 0x1dad0]
push eax
mov eax, dword [ebp - 0x2150]
add eax, 0x1dad0
push eax
call dword [sym.imp.msvcrt.dll_wcscpy]
pop ecx
pop ecx
xor esi, esi
push dword [ebp - 0x2150]
call fcn.00431a77
push ebx
call fcn.0043db13
cmp dword [ebx + 0x1dfa8], 1
jne 0x4387a4
cmp dword [ebx + 0x1dfac], esi
je 0x4387a4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
sub esi, dword [ebp - 0x216c]
xor eax, eax
test esi, esi
mov ecx, 0x400
lea edi, [ebp - 0x1048]
mov dword [ebp - 0x2168], esi
fild dword [ebp - 0x2168]
rep stosd dword es:[edi], eax
jge 0x438716
fadd dword [0x4060a4]
movzx eax, word [ebp - 0x2152]
push ecx
push ecx
fmul dword [0x4060a0]
fstp qword [esp]
push 0x407904
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x405f70
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x30
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
jne 0x438786
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4387a4
add ebx, 0x1dfa4
push 0x4060a8
push dword [ebx]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [ebx]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
xor eax, eax
inc eax
jmp 0x4388a1
push 0x57
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp ebx, esi
je 0x43889f
cmp dword [ebx + 0x1dfa8], 1
jne 0x43889f
cmp dword [ebx + 0x1dfac], esi
je 0x43889f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
lea eax, [ebp - 0x2160]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
sub esi, dword [ebp - 0x216c]
xor eax, eax
test esi, esi
mov ecx, 0x400
lea edi, [ebp - 0x1048]
mov dword [ebp - 0x2168], esi
fild dword [ebp - 0x2168]
rep stosd dword es:[edi], eax
jge 0x438815
fadd dword [0x4060a4]
movzx eax, word [ebp - 0x2152]
push ecx
push ecx
fmul dword [0x4060a0]
fstp qword [esp]
push 0x407390
push eax
movzx eax, word [ebp - 0x2154]
push eax
movzx eax, word [ebp - 0x2156]
push eax
movzx eax, word [ebp - 0x2158]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x405f70
lea eax, [ebp - 0x1048]
push 0x800
push eax
call fcn.00431bde
add esp, 0x30
cmp word [ebx + 0x1dfa0], 1
lea eax, [ebp - 0x1048]
push eax
je 0x437fab
add ebx, 0x1dfa4
push 0x4060a8
push dword [ebx]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [ebx]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
pop ebx
call fcn.004a9585
leave
ret 8