Function at 0x4430f0
Capabilities:
Capture screenshot
Download and write a file
Enumerate files on windows
Enumerate gui resources
Get disk information
Hide graphical window
Impersonate user
Inspect load icon resource
Receive and write data from server to client
Receive data
Receive data on socket
Resolve function by parsing pe exports
Set console window title
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x1a6c
call fcn.0044bc50
mov eax, dword [0x45f1b0]
xor eax, esp
mov dword [esp + 0x1a68], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0x14]
push edi
xor edi, edi
mov dword [esp + 0x5c], eax
mov dword [esp + 0x30], 0x10e
mov dword [0x4603e8], eax
mov dword [esp + 0x40], edi
cmp dword [0x4603e4], edi
je 0x44313c
lea edi, [esi + 0x10e]
mov eax, dword [0x4603f0]
push eax
push edi
push 0x10e
lea ecx, [esp + 0x176c]
push ecx
push 0
push 0
call sub.WINSPOOL.DRV_DocumentPropertiesA
mov ebx, eax
mov dword [esp + 0x34], ebx
test ebx, ebx
jns 0x443171
mov dword [esp + 0x34], 0
mov ebx, dword [esp + 0x34]
jmp 0x44317d
mov edx, dword [0x4603e8]
mov dword [edx], 0
add edi, 0x46
inc dword [0x4603e0]
mov dword [esp + 0x38], edi
mov dword [esp + 0x54], esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x450]
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
cmp word [esp + 0x49a], 0
jne 0x4431bc
mov ecx, dword [esp + 0x4f8]
mov dword [esp + 0x48], ecx
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 3
jbe 0x44321d
push 0
push 0
push 0x465
push 0
call dword [sym.imp.USER32.dll_GetParent]
push eax
call edi
mov esi, eax
test esi, esi
jle 0x44321d
push esi
call fcn.0044a0b3
add esp, 4
cmp byte [eax], 0
mov dword [esp + 0x10], eax
je 0x44321d
xor eax, eax
movsx edx, byte [eax]
push edx
push esi
push 0x465
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call edi
test eax, eax
jns 0x44321d
mov eax, dword [esp + 0x10]
push eax
mov byte [eax], 0
call fcn.0044bbc7
add esp, 4
cmp word [esp + 0x496], 0
mov edi, dword [0x4603e4]
je 0x44325d
lea eax, [ebx + 1]
push 0x786
push eax
call fcn.0044bb87
add esp, 8
test eax, eax
je 0x443266
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x50], eax
test ebx, ebx
je 0x44328f
mov esi, edi
mov dword [0x4603e0], esi
jmp 0x443276
lea eax, [esp + 0x1760]
jmp 0x443243
mov edx, dword [esp + 0x5c]
mov esi, dword [0x4603e0]
mov dword [esp + 0x34], edx
mov ebx, edx
test ebx, ebx
je 0x443295
mov edx, dword [0x4603f8]
cmp esi, edi
jg 0x4432a1
mov eax, ebx
sub eax, dword [esp + 0xa0]
jmp 0x4432a5
mov esi, dword [0x4603e0]
mov edx, dword [esp + 0x50]
mov dword [0x4603f8], edx
jmp 0x443280
mov eax, dword [esp + 0x54]
mov ecx, esi
sub ecx, edi
cmp ecx, edx
lea ecx, [eax + edi]
jg 0x4432b4
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x30]
test edx, edx
je 0x4432c2
inc dword [esp + 0x38]
jmp 0x4432ca
mov dword [ebx], edi
mov esi, dword [0x4603e0]
mov edx, dword [0x4603ec]
add edx, edi
imul edx, dword [0x4603f0]
add ecx, eax
cmp ecx, edx
jne 0x4432e9
mov eax, dword [esp + 0x38]
add dword [0x4603e4], eax
cmp dword [esp + 0x48], 0
je 0x4432fc
imul edi, edi, 0x11d
mov dword [esp + 0x30], edi
jmp 0x443304
add dword [esp + 0x38], 0x1b3
push 0x54
lea ecx, [esp + 0xd8]
push 0
push ecx
call fcn.0044aac0
add esp, 0xc
lea eax, [esp + 0xd0]
lea edx, [esp + 0x1868]
or esi, 0x81020
push eax
mov dword [esp + 0xd4], 0x58
mov dword [esp + 0xe0], edx
mov dword [esp + 0xf4], 2
mov dword [esp + 0x108], esi
mov dword [esp + 0xd8], 4
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
mov esi, eax
call dword [sym.imp.COMDLG32.dll_CommDlgExtendedError]
mov dword [esp + 0x10], eax
test esi, esi
jne 0x44337a
add dword [esp + 0x48], 0x786
movzx edx, word [esp + 0x48]
xor ecx, ecx
test edx, edx
jle 0x4433a5
mov esi, dword [esp + 0x38]
add esi, dword [0x4603e4]
nop
cmp ebx, esi
jne 0x44339c
movzx eax, cl
cmp ebx, eax
jne 0x44339c
inc edi
inc ecx
cmp ecx, edx
jl 0x443390
mov dword [esp + 0x30], edi
cmp dword [esp + 0x10], 0
je 0x4433b6
mov ecx, dword [esp + 0x48]
mov dword [0x4603f0], ecx
mov esi, dword [0x4603f4]
xor edi, edi
push edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x5c], edi
call dword [sym.imp.USER32.dll_GetDC]
push edi
push 0x12c
push ebx
push esi
mov dword [esp + 0x24], eax
call dword [sym.imp.USER32.dll_SetTimer]
push ebx
lea edx, [esp + 0x12c]
push 0x4595b8
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [0x4603e0]
add esp, 0xc
lea eax, [esp + 0x128]
push eax
push ecx
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov edi, dword [esp + 0x30]
push edi
push esi
call dword [sym.imp.USER32.dll_KillTimer]
movzx edx, di
push edx
push esi
call dword [sym.imp.USER32.dll_EndDialog]
mov eax, ebx
cdq
sub eax, edx
mov edi, eax
sar edi, 1
add edi, 0x10
mov dword [esp + 0x3c], 0xa
mov edi, edi
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
push eax
add ecx, ebx
lea edx, [eax + ecx*2]
lea eax, [esp + 0x12c]
push 0x4595b8
push eax
mov dword [0x4603e4], edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea ecx, [esp + 0x58]
push ecx
push 0
call sub.dxva2.dll_GetCapabilitiesStringLength
lea edx, [esp + 0x128]
mov dword [esp + 0x10], eax
mov eax, dword [0x4603e0]
push edx
push eax
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov eax, dword [esp + 0x64]
imul eax, dword [esp + 0x38]
imul eax, dword [esp + 0x30]
add eax, dword [esp + 0x10]
mov dword [esp + 0x4c], 0x10
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x38]
push ecx
lea edx, [esp + 0x12c]
push str._ldms
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [esp + 0x64]
push eax
lea ecx, [esp + 0x5c]
push ecx
push 0
call sub.dxva2.dll_GetMonitorCapabilities
lea edx, [esp + 0x128]
mov dword [0x4603f4], eax
mov eax, dword [0x4603e4]
push edx
push eax
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0xff00ff
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [esp + 0x2c], eax
test edi, edi
jle 0x443535
mov ecx, 0x64
sub ecx, ebx
lea edx, [ebx + 0x13]
imul ecx, edx
add ecx, 5
imul ecx, edi
add dword [0x4603e4], ecx
mov dword [esp + 0x38], 0
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x14]
push eax
lea ecx, [esp + 0xa4]
push ecx
push edx
call dword [sym.imp.USER32.dll_FillRect]
cmp dword [0x4603e0], 0
je 0x4435ea
test ebx, ebx
je 0x4435ea
push 0x206
lea eax, [esp + 0x55e]
push 0
push eax
mov word [esp + 0x564], bx
call fcn.0044aac0
push 0x206
lea ecx, [esp + 0xf72]
push 0
push ecx
mov word [esp + 0xf78], bx
call fcn.0044aac0
push 0x206
lea edx, [esp + 0x77e]
push 0
push edx
mov word [esp + 0x784], bx
call fcn.0044aac0
add esp, 0x24
lea eax, [esp + 0x18]
push eax
push 0
push 2
lea ecx, [esp + 0x76c]
push ecx
lea edx, [esp + 0xf70]
push edx
lea eax, [esp + 0x56c]
push eax
call dword [sym.imp.ADVAPI32.dll_LogonUserW]
test eax, eax
jne 0x4435ea
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [esp + 0x2c]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
dec dword [esp + 0x4c]
jne 0x4434b4
push 0xff00
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
push edx
lea eax, [esp + 0xa4]
push eax
push ecx
call dword [sym.imp.USER32.dll_FillRect]
dec dword [esp + 0x3c]
jne 0x443440
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x44]
push edx
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
test ebx, ebx
je 0x4436c5
mov edi, dword [sym.imp.WS2_32.dll_recv]
lea ebx, [ebx]
push 0x800
lea ecx, [esp + 0x764]
push 0
push ecx
call fcn.0044aac0
add esp, 0xc
push 0
push 0x800
lea edx, [esp + 0x768]
push edx
push ebx
call edi
mov esi, eax
lea eax, [esp + 0x760]
push eax
lea ecx, [esp + 0x1764]
push ecx
call fcn.0044b8e0
add esp, 8
test esi, esi
jne 0x443650
push str.read
push str.read
call fcn.0044a2b0
push 0x4595a7
mov esi, eax
call fcn.0044a2b0
add esp, 8
add esi, eax
push esi
push 0x4595a7
call fcn.0044ab3a
add esp, 0xc
mov eax, dword [0x4603f0]
mov edx, dword [0x4603e4]
xor ecx, ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x2c], ecx
cmp eax, dword [0x4603ec]
jbe 0x4437d1
mov eax, dword [esp + 0x48]
imul eax, eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x10], eax
cmp eax, ecx
jle 0x4437d1
cmp dword [0x4603ec], 0
jne 0x44374c
push 0x100
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x90]
push eax
push 0
push 0x100
lea ecx, [esp + 0x150]
push ecx
lea edx, [esp + 0x25c]
push edx
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
cmp eax, ebx
jne 0x443759
mov eax, dword [0x4603f8]
mov dword [esp + 0x2c], eax
jmp 0x443759
inc dword [esp + 0x30]
cmp dword [0x4603f4], 0
jne 0x4437d1
cmp dword [0x4603f8], 0
je 0x4437d1
mov eax, dword [esp + 0x48]
cdq
lea ecx, [ebx + 0x10]
idiv ecx
xor esi, esi
mov edi, eax
test edi, edi
jle 0x44379f
test ebx, ebx
je 0x443785
mov eax, dword [esp + 0x38]
imul eax, dword [esp + 0x30]
mov dword [esp + 0x30], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x38], eax
je 0x443847
inc esi
cmp esi, edi
jl 0x443774
mov edx, dword [esp + 0x38]
cmp dword [esp + 0x30], edx
jne 0x4437af
inc dword [0x4603e4]
cmp dword [esp + 0x50], 0
je 0x449f90
mov eax, dword [esp + 0x4c]
inc eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [esp + 0x10]
jl 0x4436fd
cmp dword [esp + 0x48], 0
je 0x4437f1
cmp dword [0x4603f0], 0
je 0x4437f1
mov eax, dword [esp + 0x44]
lea eax, [eax + eax*4 + 5]
add eax, eax
sub eax, ebx
mov dword [esp + 0x40], eax
push 0x3c
lea eax, [esp + 0xd4]
push 0
push eax
call fcn.0044aac0
add esp, 0xc
push 0
lea ecx, [esp + 0x764]
push ecx
push 0x158
push 0x29
mov dword [esp + 0x770], 0x158
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
test eax, eax
je 0x443860
push 0x3c
lea edx, [esp + 0x804]
push edx
lea eax, [esp + 0xd8]
push eax
call fcn.0044a340
add esp, 0xc
jmp 0x443881
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1a68]
xor ecx, esp
call fcn.0044aaaf
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [esp + 0xd0]
push ecx
push 0x3c
push 0x11
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
call dword [sym.imp.GDI32.dll_GetObjectA]
test eax, eax
jne 0x443881
mov dword [esp + 0x30], eax
test ebx, ebx
je 0x443890
mov dword [esp + 0xe0], 0x2bc
lea edx, [esp + 0xd0]
push edx
call dword [sym.imp.GDI32.dll_CreateFontIndirectA]
mov eax, dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [esp + 0x18]
test ebx, ebx
mov ebx, dword [sym.imp.GDI32.dll_SelectObject]
je 0x443989
test ecx, ecx
jne 0x443991
push ecx
call eax
mov esi, eax
test esi, esi
je 0x443a15
mov edi, dword [esp + 0x2c]
test edi, edi
jne 0x4438df
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
lea eax, [esp + 0x68]
push eax
push 0x18
push edi
call dword [sym.imp.GDI32.dll_GetObjectA]
push edi
push esi
call ebx
push 0
push 0
mov dword [esp + 0x34], eax
call dword [sym.imp.GDI32.dll_SetTextColor]
push 0xffffff
push 0
mov dword [esp + 0x18], eax
call dword [sym.imp.GDI32.dll_SetBkColor]
push 3
push 3
lea ecx, [esp + 0xb8]
push ecx
mov dword [esp + 0x60], eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov edx, dword [esp + 0x30]
mov eax, dword [0x4603e4]
mov ecx, dword [0x4603e0]
push edx
mov edx, dword [esp + 0x74]
push eax
mov eax, dword [esp + 0x74]
push ecx
mov ecx, dword [esp + 0xc0]
push esi
push edx
mov edx, dword [esp + 0xc4]
push eax
push ecx
push edx
push 0
call dword [sym.imp.GDI32.dll_BitBlt]
mov eax, dword [esp + 0x10]
push eax
push 0
call dword [sym.imp.GDI32.dll_SetTextColor]
mov ecx, dword [esp + 0x54]
push ecx
push 0
call dword [sym.imp.GDI32.dll_SetBkColor]
mov edx, dword [esp + 0x2c]
push edx
push esi
call ebx
push edi
call dword [sym.imp.GDI32.dll_DeleteObject]
jmp 0x443a0e
test ecx, ecx
je 0x443a15
push 0
mov dword [esp + 0x30], ecx
call eax
push 0x47
mov esi, eax
call edi
movzx eax, ax
push 0x48
mov dword [esp + 0x58], eax
call edi
mov edx, dword [esp + 0x2c]
movzx ecx, ax
push edx
push esi
mov dword [esp + 0x18], ecx
call ebx
push 6
mov dword [esp + 0x30], eax
call edi
push eax
push 5
call edi
push eax
lea eax, [esp + 0xb8]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov ecx, dword [esp + 0x30]
movzx edx, word [esp + 0x10]
movzx eax, word [esp + 0x54]
push 0xcc0020
push 0
push ecx
mov ecx, dword [esp + 0xc0]
push esi
push edx
mov edx, dword [esp + 0xc4]
push eax
push ecx
push edx
push 0
call dword [sym.imp.GDI32.dll_BitBlt]
mov eax, dword [esp + 0x2c]
push eax
push esi
call ebx
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov ecx, dword [esp + 0x34]
push 0
push 0
mov dword [esp + 0x1768], ecx
call dword [sym.imp.ole32.dll_CoInitializeEx]
push 0
push 0
push 0
push 3
push 0
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
xor ecx, ecx
mov dword [esp + 0xb0], 0x616548
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xcc], ecx
cmp dword [esp + 0x44], ecx
jne 0x443a8e
mov byte [esp + 0xb3], 0x70
xor esi, esi
mov dword [esp + 0x3c], esi
test eax, eax
je 0x443aa0
mov esi, dword [esp + 0x48]
mov dword [esp + 0x3c], esi
mov eax, dword [esp + 0x34]
mov edi, dword [0x4603f0]
lea ecx, [esi + 8]
inc esi
mov edx, 1
sub edx, eax
imul esi, edx
sar edi, cl
add esi, 2
mov dword [esp + 0x2c], 1
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], edi
test esi, esi
jle 0x443b2a
cmp dword [esp + 0x30], 1
jne 0x443b0b
mov ecx, dword [0x4603e0]
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x1760]
push eax
push 1
push 0
push ecx
push edx
call dword [sym.imp.USER32.dll_ModifyMenuA]
mov eax, dword [esp + 0x18]
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x443b2a
lea ecx, [edi + 1]
imul ecx, dword [esp + 0x2c]
add ecx, ecx
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x4c]
inc ecx
mov dword [esp + 0x4c], ecx
cmp ecx, esi
jl 0x443ad5
mov edx, dword [esp + 0x2c]
lea ecx, [eax + 1]
mov esi, 0xdb
sub esi, eax
mov edi, 0x2f5
imul esi, ecx
sub edi, eax
imul esi, edx
mov eax, dword [esp + 0x3c]
imul edi, ecx
imul edi, edx
mov edx, dword [esp + 0x50]
lea eax, [edx + eax + 1]
imul eax, eax
push 0
mov dword [esp + 0x50], ecx
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateHalftonePalette]
cmp dword [0x4603f0], 0
je 0x443b87
mov ecx, dword [esp + 0x14]
imul ecx, dword [esp + 0x2c]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x50]
imul eax, dword [esp + 0x48]
cmp dword [esp + 0x14], eax
jle 0x443ba9
push str.Create
lea edx, [esp + 0xb4]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [esp + 0xb0]
push eax
push 0x45958c
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp dword [0x4603f0], 0
je 0x443be2
cmp dword [0x4603f4], 0
jne 0x443be2
mov ecx, dword [esp + 0x14]
push edi
push esi
push ecx
call eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x5c]
mov esi, 1
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x2c], esi
cmp ax, si
jbe 0x443e3f
lea ecx, [eax - 1]
cmp ecx, 0xe
ja case.0x443c13.3
movzx edx, byte [ecx + 0x449fc0]
jmp dword [edx*4 + 0x449fac]
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 4]
push 0x459588
push eax
mov dword [0x460418], eax
call dword [sym.imp.USER32.dll_LoadBitmapA]
lea ecx, [esp + 0x68]
push ecx
push 0x18
push eax
mov dword [0x460414], eax
call dword [sym.imp.GDI32.dll_GetObjectA]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x70]
mov esi, dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push 0
mov dword [0x460410], edx
mov dword [0x46040c], eax
call esi
mov ecx, dword [0x460414]
mov edi, eax
push ecx
push edi
call ebx
mov edx, dword [0x46040c]
mov eax, dword [0x460410]
push 0
push 1
push 1
push edx
push eax
call dword [sym.imp.GDI32.dll_CreateBitmap]
push 0
mov dword [0x460408], eax
call esi
mov ecx, dword [0x460408]
mov esi, eax
push ecx
push esi
call ebx
push 4
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
push esi
call ebx
mov edx, dword [0x46040c]
mov eax, dword [0x460410]
push edx
push eax
push 0
push 0
push esi
call dword [sym.imp.GDI32.dll_Rectangle]
push 0
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
push esi
call ebx
mov ecx, dword [0x46040c]
mov edx, dword [0x460410]
push ecx
push edx
push 0
push 0
push esi
call dword [sym.imp.GDI32.dll_Ellipse]
mov eax, dword [0x46040c]
mov ecx, dword [0x460410]
push 0x8800c6
push 0
push 0
push esi
push eax
push ecx
push 0
push 0
push edi
call dword [sym.imp.GDI32.dll_BitBlt]
push edi
mov edi, dword [sym.imp.GDI32.dll_DeleteDC]
call edi
push esi
call edi
jmp 0x449f90
mov eax, dword [esp + 0x38]
movzx edx, ax
shr eax, 0x10
mov dword [0x460404], edx
mov dword [0x460400], eax
jmp 0x449f90
mov ecx, dword [esp + 0x44]
lea eax, [esp + 0xd0]
push eax
push ecx
call dword [sym.imp.USER32.dll_BeginPaint]
mov edi, dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov esi, eax
push esi
call edi
mov edx, dword [0x460414]
push edx
push eax
mov dword [esp + 0x54], eax
call ebx
push esi
call edi
mov ecx, dword [0x460408]
push ecx
push eax
mov dword [esp + 0x44], eax
call ebx
mov ecx, dword [0x460410]
mov eax, dword [0x460404]
sub eax, ecx
cdq
sub eax, edx
mov ebx, eax
mov eax, dword [0x460400]
sub eax, dword [0x46040c]
push 0x220326
push 0
cdq
push 0
sub eax, edx
mov edx, dword [esp + 0x48]
push edx
mov edi, eax
mov eax, dword [0x46040c]
push eax
push ecx
sar edi, 1
push edi
sar ebx, 1
push ebx
push esi
call dword [sym.imp.GDI32.dll_BitBlt]
mov ecx, dword [esp + 0x4c]
mov edx, dword [0x46040c]
mov eax, dword [0x460410]
push 0xee0086
push 0
push 0
push ecx
push edx
push eax
push edi
push ebx
push esi
call dword [sym.imp.GDI32.dll_BitBlt]
mov ecx, dword [esp + 0x4c]
mov esi, dword [sym.imp.GDI32.dll_DeleteDC]
push ecx
call esi
mov edx, dword [esp + 0x3c]
push edx
call esi
mov ecx, dword [esp + 0x44]
lea eax, [esp + 0xd0]
push eax
push ecx
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x449f90
mov edx, dword [0x460414]
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
push edx
call esi
mov eax, dword [0x460408]
push eax
call esi
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x449f90
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
push ecx
push edx
push eax
mov eax, dword [esp + 0x50]
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x443e60
mov edi, dword [0x4603e0]
imul edi, dword [esp + 0x44]
add eax, 0xc
cdq
sub eax, edx
mov esi, eax
sar esi, 1
sub esi, edi
sub esi, 3
add ecx, 2
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x44]
push ecx
call dword [sym.imp.USER32.dll_GetDC]
mov edx, dword [esp + 0x4c]
imul edx, edx, 0x786
mov edi, eax
mov eax, dword [esp + 0x48]
push 0
push 0
sub eax, edx
push edi
mov dword [0x4603e0], eax
call dword [sym.imp.GDI32.dll_SetTextJustification]
mov ecx, dword [esp + 0x34]
cmp ecx, esi
jge 0x443ebe
mov eax, dword [esp + 0x44]
sub eax, dword [esp + 0x40]
add eax, 0x64
imul eax, esi
mov dword [esp + 0x30], eax
mov eax, esi
sub eax, ecx
jmp 0x443eb0
mov ecx, dword [esp + 0x2c]
shl ecx, 4
dec eax
mov dword [esp + 0x2c], ecx
jne 0x443eb0
mov edx, dword [esp + 0x44]
push edi
push edx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edi, dword [0x4603e0]
add edi, dword [esp + 0x34]
mov edx, dword [esp + 0x2c]
imul edi, dword [0x4603f4]
mov eax, dword [esp + 0x44]
push 0
push 5
push 0x194
shl edx, 4
push eax
add edi, edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [0x4603e0]
mov edx, dword [esp + 0x44]
push ecx
push 0xffffffffffffffff
push 0x181
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp edi, esi
jle 0x443f2b
mov ecx, dword [esp + 0x40]
imul ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
lea esi, [eax + eax*2]
add ecx, edi
add esi, ecx
jmp 0x443f3a
imul esi, dword [esp + 0x34]
sub esi, dword [esp + 0x3c]
add esi, 0x100
cmp dword [esp + 0x34], 0
je 0x443f57
mov edx, dword [esp + 0x44]
push 0
push 7
push 0x115
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x443f69
mov eax, dword [esp + 0x10]
push esi
push 8
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [esp + 0x50], eax
mov ecx, dword [str.Yesterday__n]
mov eax, dword [0x459584]
mov edx, dword [0x459580]
mov esi, dword [0x4603f4]
mov dword [esp + 0x84], ecx
mov ecx, 0x6d
mov word [esp + 0x14], cx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x8c], eax
mov eax, ecx
dec eax
mov dword [esp + 0x88], edx
je 0x449ef9
dec eax
je 0x443e1a
sub eax, 0xd
je 0x449eb6
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x30]
push edx
push eax
push ecx
push esi
call dword [sym.imp.USER32.dll_DefWindowProcA]
mov eax, dword [esp + 0x34]
mov esi, dword [0x4603f4]
mov edi, dword [esp + 0x5c]
cmp eax, 0x111
ja 0x444141
je 0x4442e5
mov ecx, eax
dec ecx
je 0x444012
sub ecx, 0x23
jne 0x4442e5
mov ecx, dword [esp + 0x30]
mov dword [ecx + 0x18], 0x8c
mov dword [ecx + 0x1c], 0xfa
jmp 0x4442e5
mov ecx, dword [esp + 0x38]
push 0
push edi
push ecx
push esi
push 0x14
push 0x78
push 5
push 5
push 0x50032000
push 0x4595a7
push str.EDIT
push 0x200
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [esp + 0x38]
push 0
push edi
push edx
push esi
push 0x14
push 0x14
push 5
push 0x69
push 0x50000036
push str.Spin1
push str.msctls_updown32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov eax, dword [esp + 0x30]
push 0xff9c0064
push 0
push 0x465
push eax
push esi
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov ecx, dword [esp + 0x30]
push 0
push edi
push ecx
push esi
push 0x14
push 0x78
push 0x23
push 5
push 0x50012000
push 0x4595a7
push str.EDIT
push 0x200
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [esp + 0x38]
push 0
push edi
push edx
push esi
push 0x14
push 0x14
push 0x23
push 0x69
push 0x50000036
push str.Spin2
push str.msctls_updown32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov eax, dword [esp + 0x38]
push 0xff9c0064
push 0
push 0x465
push eax
push esi
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov ecx, dword [esp + 0x38]
push 0
push edi
push ecx
push esi
push 0x50
push 0x78
push 0x41
push 5
push 0x50310000
push 0x459550
push str.LISTBOX
push 0x200
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [0x4603e0]
push 0x320000
push 0
push 0x401
push edx
push esi
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov eax, dword [0x4603e4]
push 1
push eax
push esi
call dword [sym.imp.USER32.dll_CheckDlgButton]
jmp 0x4442e1
cmp eax, 0x113
jne 0x4442e5
mov edi, dword [esp + 0x30]
push 0
lea eax, [edi + 1]
push eax
push 0x402
push edi
push esi
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
lea eax, [edi + 1]
cmp eax, 0x32
jle 0x4442e1
push edi
push esi
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, dword [esp + 0x38]
mov edi, dword [sym.imp.USER32.dll_GetDlgItemInt]
push 0
push 0
push ecx
push esi
call edi
mov edx, dword [0x4603e0]
push 0
push 0
push edx
push esi
call edi
xor eax, eax
mov dword [esp + 0x94], eax
mov byte [esp + 0x84], al
mov dword [esp + 0xc0], eax
mov byte [esp + 0xb0], al
mov eax, dword [0x4603e4]
push eax
mov edi, 0xf
push esi
mov dword [esp + 0xa0], edi
mov dword [esp + 0xcc], edi
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
test eax, eax
je 0x4441ee
push 0x459544
call fcn.0044a2b0
add esp, 4
push eax
push 0x459544
jmp 0x444201
push 0x459540
call fcn.0044a2b0
add esp, 4
push eax
push 0x459540
lea ecx, [esp + 0xb8]
call fcn.00442ed0
mov ecx, dword [0x4603e0]
push 0
push 0
push 0xf0
push ecx
push esi
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
cmp eax, 1
jne 0x444293
push 0x45953c
mov dword [esp + 0x80], edi
mov dword [esp + 0x7c], 0
mov byte [esp + 0x6c], 0
call fcn.0044a2b0
add esp, 4
push eax
push 0x45953c
lea ecx, [esp + 0x70]
call fcn.00442ed0
push 0xffffffffffffffff
push 0
lea edx, [esp + 0x70]
push edx
lea ecx, [esp + 0x90]
call fcn.00442cf0
cmp dword [esp + 0x7c], 0x10
jb 0x444282
mov eax, dword [esp + 0x68]
push eax
call fcn.0044a299
add esp, 4
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], 0
mov byte [esp + 0x68], 0
cmp dword [esp + 0xc4], 0x10
jb 0x4442ad
mov ecx, dword [esp + 0xb0]
push ecx
call fcn.0044a299
add esp, 4
cmp dword [esp + 0x98], 0x10
mov dword [esp + 0xc4], edi
mov dword [esp + 0xc0], 0
mov byte [esp + 0xb0], 0
jb 0x4442e1
mov edx, dword [esp + 0x84]
push edx
call fcn.0044a299
add esp, 4
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
push ecx
push eax
push eax
push esi
call dword [sym.imp.USER32.dll_DefWindowProcA]
push 0
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push esi
push 0
mov edi, eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [esp + 0x18]
push edx
push edi
call ebx
push 0x24
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], 0
call fcn.0044ab99
mov esi, eax
add esp, 4
test esi, esi
je 0x449e80
mov dword [esi], esi
push 0
mov dword [esp + 0x1c], esi
mov dword [esi + 4], esi
call fcn.0044bb57
add esp, 4
test eax, eax
je 0x4443dc
lea eax, [esp + 0x84]
push eax
push 1
lea ecx, [esp + 0x1768]
push ecx
push edi
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
lea edx, [esp + 0xd0]
push edx
mov dword [esp + 0x80], 0xf
mov dword [esp + 0x7c], 0
mov byte [esp + 0x6c], 0
call fcn.0044a2b0
add esp, 4
push eax
lea eax, [esp + 0xd4]
push eax
lea ecx, [esp + 0x70]
call fcn.00442ed0
mov edx, dword [esi + 4]
lea ecx, [esp + 0x68]
push ecx
push edx
push esi
lea ecx, [esp + 0x24]
call fcn.00443020
mov dword [esi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
cmp dword [esp + 0x7c], 0x10
mov dword [esp + 0x1c], 1
jb 0x4443dc
mov edx, dword [esp + 0x68]
push edx
call fcn.0044a299
add esp, 4
mov eax, dword [esp + 0x10]
push eax
push edi
call ebx
push edi
call dword [sym.imp.GDI32.dll_DeleteDC]
lea ecx, [esp + 0x18]
call fcn.00442fc0
mov ecx, dword [esp + 0x18]
push ecx
call fcn.0044a299
add esp, 4
cmp dword [esp + 0x34], 0
je 0x44461e
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x38]
mov esi, dword [esp + 0x18]
push edx
push eax
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x449f90
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edi, eax
test edi, edi
je 0x449f90
mov ecx, dword [esp + 0x2c]
push ecx
push edi
call ebx
mov edx, dword [esp + 0x30]
push 0xcc0020
push 0
push 0
push esi
push edx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x4c]
push eax
push 0
push 0
push edi
call dword [sym.imp.GDI32.dll_BitBlt]
push 0x428
call fcn.0044a0b3
mov esi, eax
add esp, 4
test esi, esi
je 0x449f90
push 0x28
push 0
push esi
call fcn.0044aac0
mov ecx, dword [esp + 0x1c]
add esp, 0xc
push ecx
push edi
mov dword [esi], 0x28
call ebx
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
push 0
push esi
push 0
push edx
push 0
push eax
push edi
call dword [sym.imp.GDI32.dll_GetDIBits]
mov ecx, dword [esi + 0x14]
push ecx
call fcn.0044a0b3
mov edx, dword [esp + 0x34]
add esp, 4
push 0
push esi
push eax
push edx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x3c]
push 0
push eax
push edi
call dword [sym.imp.GDI32.dll_GetDIBits]
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
lea ecx, [esp + 0x778]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
xor eax, eax
cmp edi, 0xffffffff
je 0x449f92
push eax
mov edx, 0x4d42
mov word [esp + 0xb4], dx
lea edx, [esp + 0x18]
push edx
mov dword [esp + 0xbe], eax
push 0xe
lea eax, [esp + 0xbc]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x449f90
cmp dword [esp + 0x14], 0xe
jb 0x449f90
push 0
lea ecx, [esp + 0x18]
push ecx
push 0x28
push esi
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x449f90
cmp dword [esp + 0x14], 0x28
jb 0x449f90
mov eax, 3
cmp dword [esi + 0x10], eax
je 0x444587
movzx ecx, word [esi + 0xe]
cmp ecx, 8
ja 0x444585
mov eax, 1
shl eax, cl
jmp 0x444587
xor eax, eax
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x444590
mov eax, ecx
test eax, eax
je 0x4445c5
push 0
add eax, eax
add eax, eax
lea edx, [esp + 0x18]
push edx
push eax
mov dword [esp + 0x1c], eax
lea eax, [esi + 0x28]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x449f90
mov ecx, dword [esp + 0x10]
cmp dword [esp + 0x14], ecx
jb 0x449f90
mov eax, dword [esi + 0x14]
mov ecx, dword [esp + 0x54]
push 0
lea edx, [esp + 0x18]
push edx
push eax
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x449f90
mov edx, dword [esp + 0x14]
cmp edx, dword [esi + 0x14]
jb 0x449f90
push 0
push 0
push 0
push edi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0
lea eax, [esp + 0x18]
push eax
push 0xe
lea ecx, [esp + 0xbc]
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x44461e
mov dword [esp + 0x30], eax
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
call esi
push 1
mov edi, eax
call esi
push 0
mov dword [esp + 0x40], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edx, dword [esp + 0x3c]
push edx
push edi
push 0
mov esi, eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push eax
push esi
call ebx
push 0x40cc0020
push 0
push 0
push 0
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x4c]
push eax
push edi
push 0
push 0
push esi
call dword [sym.imp.GDI32.dll_BitBlt]
mov ecx, dword [esp + 0x10]
push ecx
push esi
call ebx
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov edi, dword [esp + 0x44]
push 0xfffffffffffffff4
push edi
mov dword [esp + 0xd8], edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp dword [esp + 0x34], 0
mov ebx, dword [sym.imp.USER32.dll_GetParent]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], 0xfffffff4
mov dword [esp + 0xe0], 1
je 0x44470b
lea edx, [esp + 0xd0]
push edx
push 0xfffffffffffffff4
push 0x4e
push edi
mov dword [esp + 0xec], 3
call ebx
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push eax
call esi
test al, 4
jne 0x444711
test al, 0x40
je 0x444711
mov ecx, dword [esp + 0xd8]
lea eax, [esp + 0xd0]
push eax
push ecx
push 0x4e
push edi
mov dword [esp + 0xec], 4
call ebx
push eax
call esi
jmp 0x444711
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
lea edx, [esp + 0xe4]
push edx
push edi
mov dword [esp + 0xe4], 1
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [esp + 0xd8]
lea eax, [esp + 0xd0]
push eax
push ecx
push 0x4e
push edi
call ebx
push eax
call esi
mov edx, eax
and edx, 4
or dl, 8
mov dword [esp + 0x60], eax
jne 0x4447ed
mov ecx, dword [esp + 0x40]
test ecx, ecx
jle 0x4447c6
mov edx, eax
and edx, 0x20
mov dword [esp + 0x54], edx
mov dword [esp + 0x3c], ecx
lea ebx, [ebx]
test edx, edx
je 0x444785
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xdc], 0x10001
jmp 0x44478b
xor ecx, ecx
mov dword [esp + 0x10], ecx
test cl, 4
jne 0x4447c0
test cl, 0x10
je 0x4447c0
mov ecx, dword [esp + 0xd8]
lea eax, [esp + 0xd0]
push eax
push ecx
push 0x4e
push edi
mov dword [esp + 0xec], 0x10004
call ebx
push eax
call esi
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x60]
dec dword [esp + 0x3c]
jne 0x444770
test al, 0x10
je 0x4447ed
mov eax, dword [esp + 0xd8]
lea edx, [esp + 0xd0]
push edx
push eax
push 0x4e
push edi
mov dword [esp + 0xec], 4
call ebx
push eax
call esi
mov eax, dword [esp + 0x34]
cmp eax, 0xf
je 0x449e5d
cmp eax, 0x14
je 0x449f90
cmp eax, 0x318
je 0x449e49
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
push ecx
push edx
push eax
push edi
call dword [sym.imp.USER32.dll_DefWindowProcA]
push 8
lea eax, [esp + 0x1c]
push 0
push eax
call fcn.0044aac0
add esp, 0xc
lea ecx, [esp + 0x18]
push ecx
mov dword [esp + 0x1c], 8
mov dword [esp + 0x20], 1
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
test eax, eax
jne 0x444854
mov dword [esp + 0x30], eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
push 0
push 0
push 0x190
push 0x190
push 0x80000000
push 0x80000000
push 0xff0000
push str.Main_Window
lea edx, [esp + 0xf88]
push edx
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov ecx, dword [esp + 0x58]
mov ebx, eax
mov eax, dword [esp + 0x18]
push str.Column
push eax
push ecx
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x58]
push str.Column_2
push edx
push eax
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x58]
push 0x4594ec
push ecx
push edx
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [esp + 0x30], 1
jle 0x444942
push 0x1f8
lea eax, [esp + 0x764]
push 0
push eax
call fcn.0044aac0
add esp, 0xc
cmp dword [esp + 0x34], 0
mov dword [esp + 0x760], 0x1f8
je 0x444928
push 0x1f8
lea ecx, [esp + 0x764]
push ecx
push 0x1f8
push 0x29
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
jne 0x444928
call fcn.0044b9c8
lea edx, [esp + 0x8f8]
push edx
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
push 1
push eax
push 0x30
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
push 0xa
push ebx
call dword [sym.imp.USER32.dll_ShowWindow]
push ebx
call dword [sym.imp.USER32.dll_UpdateWindow]
test eax, eax
jne 0x44495f
test edi, edi
je 0x44495f
call fcn.0044b9c8
cmp dword [esp + 0x34], 0
je 0x4449a7
mov ebx, dword [sym.imp.USER32.dll_GetMessageW]
push 0
push 0
push 0
lea eax, [esp + 0x74]
push eax
call ebx
test eax, eax
jle 0x4449a7
lea ecx, [ecx]
lea ecx, [esp + 0x68]
push ecx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea edx, [esp + 0x68]
push edx
call dword [sym.imp.USER32.dll_DispatchMessageW]
push 0
push 0
push 0
lea eax, [esp + 0x74]
push eax
call ebx
test eax, eax
jg 0x444980
push 0x28
lea ecx, [esp + 0xd4]
push 0
push ecx
call fcn.0044aac0
lea edx, [esp + 0x1874]
add esp, 0xc
mov eax, edx
push eax
push 0
mov dword [esp + 0xfc], edx
call dword [sym.imp.USER32.dll_LoadCursorW]
lea ecx, [esp + 0x1868]
push ecx
push 0
mov dword [esp + 0xf0], eax
call dword [sym.imp.USER32.dll_LoadIconW]
push 0
mov dword [esp + 0xe8], eax
mov dword [esp + 0xf0], 6
mov dword [esp + 0xd4], 3
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea edx, [esp + 0xd0]
push edx
mov dword [esp + 0xe4], eax
call dword [sym.imp.USER32.dll_RegisterClassW]
test ax, ax
jne 0x444a36
cmp dword [esp + 0x34], 0
je 0x444a36
call fcn.0044b9c8
cmp dword [0x4603ec], 0
je 0x444ae5
push 0x10
lea eax, [esp + 0xb4]
push 0
push eax
call fcn.0044aac0
add esp, 0xc
lea ecx, [esp + 0x2c]
push ecx
push 0xf01ff
mov dword [esp + 0xb8], 1
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
jne 0x444a81
mov dword [esp + 0x30], eax
lea edx, [esp + 0xb4]
push edx
lea eax, [esp + 0x244]
push eax
push 0
call dword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueA]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x444aaa
mov ecx, dword [esp + 0x2c]
push ecx
call ebx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x18]
push edx
push 0
push 0
lea eax, [esp + 0xbc]
push eax
push 0
push ecx
mov dword [esp + 0xd4], 2
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
test eax, eax
jne 0x444ade
mov edx, dword [esp + 0x2c]
push edx
call ebx
mov eax, dword [esp + 0x2c]
push eax
call ebx
mov cl, byte [esp + 0x34]
push 0x103
lea edx, [esp + 0x13d]
push 0
push edx
mov byte [esp + 0x144], cl
call fcn.0044aac0
lea eax, [esp + 0x144]
push eax
lea ecx, [esp + 0x770]
push ecx
call fcn.0044b8d0
lea edx, [esp + 0x774]
push 0x2f
push edx
call fcn.0044a0e0
mov ebx, eax
lea eax, [esp + 0x77c]
push 0x5c
push eax
call fcn.0044a0e0
add esp, 0x24
cmp ebx, eax
jbe 0x444b42
mov eax, ebx
mov ebx, dword [esp + 0x34]
test ebx, ebx
jne 0x444b4e
test edi, edi
je 0x444b92
inc eax
push eax
lea ecx, [esp + 0x13c]
push ecx
call fcn.0044b8d0
add esp, 8
test edi, edi
je 0x444b92
push 0
call fcn.0044e7fc
push 0
mov edi, eax
call fcn.0044b85c
push 2
push 0
push edi
mov dword [esp + 0x24], eax
call fcn.0044f637
mov edx, dword [esp + 0x24]
push 0
push edx
push edi
call fcn.0044f637
add esp, 0x20
push 0x103
lea eax, [esp + 0x13d]
push 0
push eax
mov byte [esp + 0x144], bl
call fcn.0044aac0
push 0x103
lea ecx, [esp + 0x359]
push 0
push ecx
mov byte [esp + 0x360], bl
call fcn.0044aac0
lea edx, [esp + 0x150]
push 0x2e
push edx
call fcn.0044a0e0
mov ebx, eax
lea eax, [esp + 0x158]
push 0x2f
push eax
call fcn.0044a0e0
lea ecx, [esp + 0x160]
push 0x5c
push ecx
mov edi, eax
call fcn.0044a0e0
add esp, 0x30
cmp edi, eax
jbe 0x444c02
mov eax, edi
test ebx, ebx
je 0x444c29
test eax, eax
je 0x444c0e
cmp eax, ebx
ja 0x444c29
cmp dword [esp + 0x34], 0
je 0x444c53
lea edx, [esp + 0x348]
push edx
inc ebx
push ebx
call fcn.0044b8d0
add esp, 8
jmp 0x444c53
lea eax, [esp + 0x138]
push 0x4594e8
push eax
call fcn.0044b8e0
lea ecx, [esp + 0x350]
push ecx
lea edx, [esp + 0x144]
push edx
call fcn.0044b8e0
add esp, 0x10
xor eax, eax
push 0x7fe
push eax
lea ecx, [esp + 0x76a]
push ecx
mov word [esp + 0x76c], ax
call fcn.0044aac0
add esp, 0xc
push 0x400
lea edx, [esp + 0x764]
push edx
push 0xffffffffffffffff
lea eax, [esp + 0x24c]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x764]
push edx
call dword [sym.imp.ole32.dll_CLSIDFromString]
cmp dword [0x4603ec], 0
mov edi, dword [sym.imp.USER32.dll_SetMenu]
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
je 0x444cec
cmp dword [esp + 0x18], 0
jne 0x444cec
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call edi
mov edx, dword [esp + 0x10]
push edx
call ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call edi
mov edx, dword [esp + 0x10]
push edx
call ebx
push 0x104
lea eax, [esp + 0x454]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x138]
push ecx
lea edx, [esp + 0x34c]
push edx
lea eax, [esp + 0x248]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x460]
push edx
call fcn.0044ae5d
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x570]
push 0x104
push ecx
call fcn.0044ab3a
add esp, 0x20
cmp dword [0x4603ec], 0
je 0x444d7b
cmp dword [esp + 0x18], 0
jne 0x444d7b
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call edi
mov ecx, dword [esp + 0x10]
push ecx
call ebx
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call edi
mov ecx, dword [esp + 0x10]
push ecx
call ebx
mov edx, dword [0x4603ec]
mov eax, dword [esp + 0x18]
imul eax, dword [esp + 0x18]
add edx, 0xfffffffa
imul edx, dword [0x4603f0]
cmp eax, edx
jne 0x444da4
mov ecx, dword [0x4603e0]
sub dword [0x4603e4], ecx
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call dword [sym.imp.ole32.dll_CLSIDFromString]
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0x560]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x258]
push 0x104
push eax
call fcn.0044ab3a
xor ecx, ecx
push 0x7fe
push ecx
lea edx, [esp + 0x78a]
push edx
mov word [esp + 0x78c], cx
call fcn.0044aac0
add esp, 0x2c
push 0x400
lea eax, [esp + 0x764]
push eax
push 0xffffffffffffffff
lea ecx, [esp + 0x564]
push ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea edx, [esp + 0xb0]
push edx
lea eax, [esp + 0x764]
push eax
call dword [sym.imp.ole32.dll_CLSIDFromString]
cmp dword [0x4603ec], 0
je 0x444ede
cmp dword [esp + 0x18], 0
jne 0x444ede
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
push ecx
push edx
call edi
mov eax, dword [esp + 0x10]
push eax
call ebx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
push ecx
push edx
call edi
mov eax, dword [esp + 0x10]
push eax
call ebx
xor ecx, ecx
push 0x7fe
push ecx
lea edx, [esp + 0x76a]
push edx
mov word [esp + 0x76c], cx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea eax, [esp + 0x764]
push eax
push 0xffffffffffffffff
lea ecx, [esp + 0x564]
push ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea edx, [esp + 0xb0]
push edx
lea eax, [esp + 0x764]
push eax
call dword [sym.imp.ole32.dll_CLSIDFromString]
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x444f67
lea esp, [esp]
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x444f50
push 0x3c
lea ecx, [esp + 0xd4]
push 0
push ecx
call fcn.0044aac0
add esp, 0xc
cmp dword [0x4603ec], 0
je 0x444ff7
cmp dword [esp + 0x18], 0
mov edi, dword [sym.imp.USER32.dll_SetMenu]
jne 0x444fbb
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
push edx
push ebx
call edi
push ebx
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
call ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call edi
mov edx, dword [esp + 0x10]
push edx
call ebx
jmp 0x444fc1
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
cmp dword [0x4603ec], 0
je 0x444ff7
cmp dword [esp + 0x18], 0
jne 0x444ff7
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call edi
mov edx, dword [esp + 0x10]
push edx
call ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call edi
mov edx, dword [esp + 0x10]
push edx
call ebx
xor eax, eax
push 0x7fe
push eax
lea ecx, [esp + 0x76a]
push ecx
mov word [esp + 0x76c], ax
call fcn.0044aac0
add esp, 0xc
push 0x400
lea edx, [esp + 0x764]
push edx
push 0xffffffffffffffff
lea eax, [esp + 0x564]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x764]
push edx
call dword [sym.imp.ole32.dll_CLSIDFromString]
mov eax, dword [0x4603ec]
mov ecx, dword [esp + 0x18]
imul ecx, dword [esp + 0x18]
add eax, 0xfffffffa
imul eax, dword [0x4603f0]
cmp ecx, eax
jne 0x445076
mov edx, dword [0x4603e0]
sub dword [0x4603e4], edx
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x44508d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x44509f
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x4450ca
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x4450b3
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
mov eax, dword [0x4603ec]
mov ebx, dword [sym.imp.WS2_32.dll_WSACreateEvent]
add esp, 0xc
mov dword [esp + 0x10], eax
call ebx
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0xc8], eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
mov edi, dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x445122
call edi
cmp eax, 0x3e5
je 0x445122
call edi
mov dword [0x4603e0], eax
mov eax, dword [0x4603ec]
mov dword [esp + 0x10], eax
call ebx
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0xc8], eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x44515a
call edi
cmp eax, 0x3e5
je 0x44515a
call edi
mov dword [0x4603e0], eax
mov eax, dword [0x4603ec]
mov ecx, dword [esp + 0x18]
imul ecx, dword [esp + 0x18]
add eax, 0xfffffffa
imul eax, dword [0x4603f0]
cmp ecx, eax
jne 0x445182
mov edx, dword [0x4603e0]
sub dword [0x4603e4], edx
push 0x104
lea eax, [esp + 0x454]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x138]
push ecx
lea edx, [esp + 0x34c]
push edx
lea eax, [esp + 0x560]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x460]
push edx
call fcn.0044ae5d
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x258]
push 0x104
push ecx
call fcn.0044ab3a
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x78a]
push eax
mov word [esp + 0x78c], dx
call fcn.0044aac0
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
add esp, 0x2c
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call edi
mov ebx, dword [sym.imp.ole32.dll_CLSIDFromString]
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
mov edx, dword [0x4603ec]
mov dword [esp + 0x10], edx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x14]
push ecx
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x445278
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x445278
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4603e0], eax
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call edi
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
cmp dword [0x4603ec], 0
je 0x4452ff
cmp dword [esp + 0x18], 0
jne 0x4452ff
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
push edi
push ebx
call dword [sym.imp.USER32.dll_SetMenu]
push ebx
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
call ebx
push edi
mov edi, dword [esp + 0x1c]
push edi
call dword [sym.imp.USER32.dll_SetMenu]
push edi
call ebx
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call edi
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0x560]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x258]
push 0x104
push eax
call fcn.0044ab3a
add esp, 0x20
push 0x104
lea ecx, [esp + 0x454]
push ecx
push 0
call edi
lea edx, [esp + 0x138]
push edx
lea eax, [esp + 0x34c]
push eax
lea ecx, [esp + 0x560]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x460]
push eax
call fcn.0044ae5d
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x258]
push 0x104
push edx
call fcn.0044ab3a
mov ebx, dword [esp + 0x38]
add esp, 0x20
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x4453da
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x4453c3
push 0x3c
lea eax, [esp + 0xd4]
push 0
push eax
call fcn.0044aac0
mov ebx, dword [esp + 0x24]
add esp, 0xc
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445419
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445402
push 0x3c
lea ecx, [esp + 0xd4]
push 0
push ecx
call fcn.0044aac0
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x776]
push eax
mov word [esp + 0x778], dx
call fcn.0044aac0
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
add esp, 0x18
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call edi
mov ebx, dword [sym.imp.ole32.dll_CLSIDFromString]
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
mov edx, dword [0x4603ec]
mov dword [esp + 0x10], edx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x14]
push ecx
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x4454ca
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x4454ca
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4603e0], eax
mov edx, dword [0x4603ec]
mov eax, dword [esp + 0x18]
imul eax, dword [esp + 0x18]
add edx, 0xfffffffa
imul edx, dword [0x4603f0]
cmp eax, edx
jne 0x4454f3
mov ecx, dword [0x4603e0]
sub dword [0x4603e4], ecx
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call edi
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call edi
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
mov edx, dword [0x4603ec]
mov dword [esp + 0x10], edx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x14]
push ecx
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x4455d4
mov edi, dword [sym.imp.WS2_32.dll_WSAGetLastError]
call edi
cmp eax, 0x3e5
je 0x4455d4
call edi
mov dword [0x4603e0], eax
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0x560]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x258]
push 0x104
push eax
call fcn.0044ab3a
add esp, 0x20
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x445644
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x445656
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov eax, dword [0x4603ec]
mov ecx, dword [esp + 0x18]
imul ecx, dword [esp + 0x18]
lea edx, [eax - 6]
imul edx, dword [0x4603f0]
cmp ecx, edx
jne 0x44567e
mov edx, dword [0x4603e0]
sub dword [0x4603e4], edx
test eax, eax
je 0x4456b1
cmp dword [esp + 0x18], 0
jne 0x4456b1
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
push edi
push ebx
call dword [sym.imp.USER32.dll_SetMenu]
push ebx
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
call ebx
push edi
mov edi, dword [esp + 0x1c]
push edi
call dword [sym.imp.USER32.dll_SetMenu]
push edi
call ebx
push 0x104
lea eax, [esp + 0x454]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x138]
push ecx
lea edx, [esp + 0x34c]
push edx
lea eax, [esp + 0x560]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x460]
push edx
call fcn.0044ae5d
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x258]
push 0x104
push ecx
call fcn.0044ab3a
add esp, 0x20
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x445721
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x445733
mov edx, dword [0x4603e4]
push eax
mov dword [0x4603e0], edx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445767
jmp 0x445750
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445750
push 0x3c
lea eax, [esp + 0xd4]
push 0
push eax
call fcn.0044aac0
add esp, 0xc
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x445792
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x4457a4
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x4457d7
jmp 0x4457c0
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x4457c0
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
mov eax, dword [0x4603ec]
mov ebx, dword [sym.imp.WS2_32.dll_WSACreateEvent]
add esp, 0xc
mov dword [esp + 0x10], eax
call ebx
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0xc8], eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
mov edi, dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x44582f
call edi
cmp eax, 0x3e5
je 0x44582f
call edi
mov dword [0x4603e0], eax
mov eax, dword [0x4603ec]
mov edx, dword [esp + 0x18]
imul edx, dword [esp + 0x18]
lea ecx, [eax - 6]
imul ecx, dword [0x4603f0]
cmp edx, ecx
jne 0x445857
mov ecx, dword [0x4603e0]
sub dword [0x4603e4], ecx
mov dword [esp + 0x10], eax
call ebx
lea edx, [esp + 0xb0]
mov dword [esp + 0xc0], eax
push edx
lea eax, [esp + 0x14]
push eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x44588a
call edi
cmp eax, 0x3e5
je 0x44588a
call edi
mov dword [0x4603e0], eax
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x4458a1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x4458b3
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x4458e7
jmp 0x4458d0
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x4458d0
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
add esp, 0xc
cmp dword [0x4603ec], 0
je 0x445933
cmp dword [esp + 0x18], 0
jne 0x445933
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
push edi
push ebx
call dword [sym.imp.USER32.dll_SetMenu]
push ebx
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
call ebx
push edi
mov edi, dword [esp + 0x1c]
push edi
call dword [sym.imp.USER32.dll_SetMenu]
push edi
call ebx
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445967
jmp 0x445950
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445950
push 0x3c
lea eax, [esp + 0xd4]
push 0
push eax
call fcn.0044aac0
add esp, 0xc
cmp dword [0x4603ec], 0
je 0x4459bb
cmp dword [esp + 0x18], 0
jne 0x4459bb
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov edi, dword [sym.imp.USER32.dll_SetMenu]
push ecx
push ebx
call edi
push ebx
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
call ebx
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call edi
mov ecx, dword [esp + 0x10]
push ecx
call ebx
jmp 0x4459c7
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
mov edi, dword [sym.imp.USER32.dll_SetMenu]
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call dword [sym.imp.ole32.dll_CLSIDFromString]
cmp dword [0x4603ec], 0
je 0x445a54
cmp dword [esp + 0x18], 0
jne 0x445a54
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call edi
mov ecx, dword [esp + 0x10]
push ecx
call ebx
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call edi
mov ecx, dword [esp + 0x10]
push ecx
call ebx
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x564]
push edx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call dword [sym.imp.ole32.dll_CLSIDFromString]
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445ad7
nop
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445ac0
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
mov eax, dword [0x4603ec]
mov ecx, dword [esp + 0x24]
imul ecx, dword [esp + 0x24]
add eax, 0xfffffffa
imul eax, dword [0x4603f0]
add esp, 0xc
cmp ecx, eax
jne 0x445b13
mov edx, dword [0x4603e0]
sub dword [0x4603e4], edx
push 0x104
lea eax, [esp + 0x454]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x138]
push ecx
lea edx, [esp + 0x34c]
push edx
lea eax, [esp + 0x560]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x460]
push edx
call fcn.0044ae5d
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x258]
push 0x104
push ecx
call fcn.0044ab3a
mov ebx, dword [esp + 0x38]
add esp, 0x20
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445b97
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445b80
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
mov eax, dword [0x4603ec]
mov ecx, dword [esp + 0x24]
imul ecx, dword [esp + 0x24]
add eax, 0xfffffffa
imul eax, dword [0x4603f0]
add esp, 0xc
cmp ecx, eax
jne 0x445bd3
mov edx, dword [0x4603e0]
sub dword [0x4603e4], edx
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445c07
jmp 0x445bf0
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445bf0
push 0x3c
lea eax, [esp + 0xd4]
push 0
push eax
call fcn.0044aac0
xor ecx, ecx
push 0x7fe
push ecx
lea edx, [esp + 0x776]
push edx
mov word [esp + 0x778], cx
call fcn.0044aac0
add esp, 0x18
push 0x400
lea eax, [esp + 0x764]
push eax
push 0xffffffffffffffff
lea ecx, [esp + 0x564]
push ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea edx, [esp + 0xb0]
push edx
lea eax, [esp + 0x764]
push eax
call dword [sym.imp.ole32.dll_CLSIDFromString]
cmp dword [0x4603ec], 0
je 0x445caf
cmp dword [esp + 0x18], 0
jne 0x445caf
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov edi, dword [sym.imp.USER32.dll_SetMenu]
push ecx
push ebx
call edi
push ebx
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
call ebx
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call edi
mov ecx, dword [esp + 0x10]
push ecx
call ebx
jmp 0x445cbb
mov edi, dword [sym.imp.USER32.dll_SetMenu]
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
mov edx, dword [0x4603ec]
mov eax, dword [esp + 0x18]
imul eax, dword [esp + 0x18]
add edx, 0xfffffffa
imul edx, dword [0x4603f0]
cmp eax, edx
jne 0x445ce4
mov ecx, dword [0x4603e0]
sub dword [0x4603e4], ecx
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0x560]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x258]
push 0x104
push eax
call fcn.0044ab3a
mov ecx, dword [0x4603ec]
add esp, 0x20
mov dword [esp + 0x10], ecx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
lea edx, [esp + 0xb0]
mov dword [esp + 0xc0], eax
push edx
lea eax, [esp + 0x14]
push eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x445d82
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x445d82
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4603e0], eax
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x445d99
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x445dab
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0x560]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x258]
push 0x104
push eax
call fcn.0044ab3a
add esp, 0x20
cmp dword [0x4603ec], 0
je 0x445e3a
cmp dword [esp + 0x18], 0
jne 0x445e3a
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
push ecx
push edx
call edi
mov eax, dword [esp + 0x10]
push eax
call ebx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
push ecx
push edx
call edi
mov eax, dword [esp + 0x10]
push eax
call ebx
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445e67
mov edi, edi
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445e50
push 0x3c
lea ecx, [esp + 0xd4]
push 0
push ecx
call fcn.0044aac0
add esp, 0xc
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x445e92
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x445ea4
mov edx, dword [0x4603e4]
push eax
mov dword [0x4603e0], edx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
push 0x104
lea eax, [esp + 0x454]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x138]
push ecx
lea edx, [esp + 0x34c]
push edx
lea eax, [esp + 0x560]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x460]
push edx
call fcn.0044ae5d
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x258]
push 0x104
push ecx
call fcn.0044ab3a
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x78a]
push eax
mov word [esp + 0x78c], dx
call fcn.0044aac0
add esp, 0x2c
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0xf6c]
push edx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call dword [sym.imp.ole32.dll_CLSIDFromString]
cmp dword [0x4603ec], 0
je 0x445f89
cmp dword [esp + 0x18], 0
jne 0x445f89
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
push edi
push ebx
call dword [sym.imp.USER32.dll_SetMenu]
push ebx
mov ebx, dword [sym.imp.USER32.dll_DrawMenuBar]
call ebx
push edi
mov edi, dword [esp + 0x1c]
push edi
call dword [sym.imp.USER32.dll_SetMenu]
push edi
call ebx
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x445fb7
lea ecx, [ecx]
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x445fa0
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
xor eax, eax
push 0x7fe
push eax
lea ecx, [esp + 0x776]
push ecx
mov word [esp + 0x778], ax
call fcn.0044aac0
add esp, 0x18
push 0x400
lea edx, [esp + 0x764]
push edx
push 0xffffffffffffffff
lea eax, [esp + 0xf6c]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x764]
push edx
call dword [sym.imp.ole32.dll_CLSIDFromString]
mov eax, dword [0x4603ec]
mov dword [esp + 0x10], eax
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0xc8], eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x446061
mov edi, dword [sym.imp.WS2_32.dll_WSAGetLastError]
call edi
cmp eax, 0x3e5
je 0x446061
call edi
mov dword [0x4603e0], eax
push 0x104
lea eax, [esp + 0x454]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x138]
push ecx
lea edx, [esp + 0x34c]
push edx
lea eax, [esp + 0xf68]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x460]
push edx
call fcn.0044ae5d
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x570]
push 0x104
push ecx
call fcn.0044ab3a
mov ebx, dword [esp + 0x38]
add esp, 0x20
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x4460e7
mov edi, edi
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x4460d0
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
add esp, 0xc
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x446112
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x446124
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov ebx, dword [esp + 0x18]
xor edi, edi
push edi
push edi
push 0x1004
push ebx
call esi
test eax, eax
je 0x446157
jmp 0x446140
inc dword [0x4603e0]
push 0
push 0
push 0x1004
push ebx
inc edi
call esi
cmp edi, eax
jb 0x446140
push 0x3c
lea edx, [esp + 0xd4]
push 0
push edx
call fcn.0044aac0
add esp, 0xc
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x446182
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x446194
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0xf6c]
push edx
push 0
push 0
call edi
mov ebx, dword [sym.imp.ole32.dll_CLSIDFromString]
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0xf68]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x570]
push 0x104
push eax
call fcn.0044ab3a
add esp, 0x20
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x44625f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x446271
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
cmp dword [0x4603ec], 0
je 0x4462b7
cmp dword [esp + 0x18], 0
jne 0x4462b7
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call dword [sym.imp.USER32.dll_SetMenu]
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.USER32.dll_DrawMenuBar]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call dword [sym.imp.USER32.dll_SetMenu]
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.USER32.dll_DrawMenuBar]
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0xf6c]
push edx
push 0
push 0
call edi
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
cmp dword [0x4603ec], 0
je 0x44634c
cmp dword [esp + 0x18], 0
jne 0x44634c
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call dword [sym.imp.USER32.dll_SetMenu]
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.USER32.dll_DrawMenuBar]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
push edx
push eax
call dword [sym.imp.USER32.dll_SetMenu]
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.USER32.dll_DrawMenuBar]
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x446363
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x446375
mov edx, dword [0x4603e4]
push eax
mov dword [0x4603e0], edx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov eax, dword [0x4603ec]
mov edx, dword [esp + 0x18]
imul edx, dword [esp + 0x18]
lea ecx, [eax - 6]
imul ecx, dword [0x4603f0]
cmp edx, ecx
jne 0x44639d
mov ecx, dword [0x4603e0]
sub dword [0x4603e4], ecx
mov dword [esp + 0x10], eax
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
lea edx, [esp + 0xb0]
mov dword [esp + 0xc0], eax
push edx
lea eax, [esp + 0x14]
push eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x4463dc
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x4463dc
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4603e0], eax
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x4463f3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x446405
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov edx, dword [0x4603ec]
mov dword [esp + 0x10], edx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x14]
push ecx
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x44644a
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x44644a
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4603e0], eax
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0xf6c]
push edx
push 0
push 0
call edi
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0xf68]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x570]
push 0x104
push eax
call fcn.0044ab3a
xor ecx, ecx
push 0x7fe
push ecx
lea edx, [esp + 0x78a]
push edx
mov word [esp + 0x78c], cx
call fcn.0044aac0
add esp, 0x2c
push 0x400
lea eax, [esp + 0x764]
push eax
push 0xffffffffffffffff
lea ecx, [esp + 0x24c]
push ecx
push 0
push 0
call edi
lea edx, [esp + 0xb0]
push edx
lea eax, [esp + 0x764]
push eax
call ebx
mov ecx, dword [0x4603ec]
mov dword [esp + 0x10], ecx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
lea edx, [esp + 0xb0]
mov dword [esp + 0xc0], eax
push edx
lea eax, [esp + 0x14]
push eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x446583
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x446583
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4603e0], eax
push 0x104
lea ecx, [esp + 0x454]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [esp + 0x138]
push edx
lea eax, [esp + 0x34c]
push eax
lea ecx, [esp + 0xf68]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x460]
push eax
call fcn.0044ae5d
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x570]
push 0x104
push edx
call fcn.0044ab3a
xor eax, eax
push 0x7fe
push eax
lea ecx, [esp + 0x78a]
push ecx
mov word [esp + 0x78c], ax
call fcn.0044aac0
add esp, 0x2c
push 0x400
lea edx, [esp + 0x764]
push edx
push 0xffffffffffffffff
lea eax, [esp + 0x24c]
push eax
push 0
push 0
call edi
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x764]
push edx
call ebx
call sub.IPHLPAPI.DLL_IcmpCreateFile
cmp eax, 0xffffffff
jne 0x44663f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4603e4], eax
jmp 0x446651
mov ecx, dword [0x4603e4]
push eax
mov dword [0x4603e0], ecx
call sub.IPHLPAPI.DLL_IcmpCloseHandle
mov edx, dword [0x4603ec]
mov dword [esp + 0x10], edx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x14]
push ecx
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x446696
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
je 0x446696
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4603e0], eax
cmp dword [0x4603ec], 0
je 0x4466dc
cmp dword [esp + 0x18], 0
jne 0x4466dc
xor edx, edx
push 0x7fe
push edx
lea eax, [esp + 0x76a]
push eax
mov word [esp + 0x76c], dx
call fcn.0044aac0
add esp, 0xc
push 0x400
lea ecx, [esp + 0x764]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0xf6c]
push edx
push 0
push 0
call edi
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x764]
push ecx
call ebx
push 0x104
lea edx, [esp + 0x454]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x34c]
push ecx
lea edx, [esp + 0xf68]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x460]
push ecx
call fcn.0044ae5d
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x570]
push 0x104
push eax
call fcn.0044ab3a
mov ecx, dword [0x4603ec]
add esp, 0x20
mov dword [esp + 0x10], ecx
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
lea edx, [esp + 0xb0]
mov dword [esp + 0xc0], eax
push edx
lea eax, [esp + 0x14]
push eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x4467c9
lea ecx, [esp + 0xb0]
push ecx
push edi
call dword [sym.imp.USER32.dll_GetClientRect]
jmp 0x449f90
lea edx, [esp + 0xd0]
push edx
push edi
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [esp + 0xd0]
push eax
push edi
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x449f90
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0xb4]
mov dword [esp + 0x1c], 0
call fcn.0044a195
push 0x45b8b0
lea edx, [esp + 0xb4]
push edx
mov dword [esp + 0xb8], vtable.std::bad_alloc.0
call fcn.0044ac19
lea eax, [esp + 0xd0]
push eax
push esi
call dword [sym.imp.USER32.dll_BeginPaint]
lea ecx, [esp + 0x14]
push ecx
mov edi, eax
call fcn.0044a2b0
add esp, 4
push eax
lea edx, [esp + 0x18]
push edx
push 0xa
push 0xa
push edi
call dword [sym.imp.GDI32.dll_TextOutA]
lea eax, [esp + 0xd0]
push eax
push esi
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x449f90
push 0x45946c
lea ecx, [esp + 0x14]
push str.file.txt
push ecx
call fcn.0044b536
add esp, 0xc
push esi
call dword [sym.imp.USER32.dll_GetDC]
push str.Arial
push 0
push 4
push 0
push 0
push 1
push 0
push 0
push 0
push 0x2bc
push 0
push 0
push 0
push 0xfffffffffffffff1
mov esi, eax
call dword [sym.imp.GDI32.dll_CreateFontA]
push eax
push esi
call ebx
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x88]
push eax
call fcn.0044a2b0
add esp, 4
push eax
lea ecx, [esp + 0x8c]
push ecx
push esi
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
push edx
push eax
push str.w_ld_h_ld_n
push ecx
call fcn.0044b36e
mov edx, dword [esp + 0x20]
push edx
call fcn.0044b2fa
add esp, 0x14
xor eax, eax
mov ecx, dword [esp + 0x1a74]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0044aaaf
mov esp, ebp
pop ebp
ret 0x10