Function at 0x409387
Capabilities:
Create thread

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x64
mov eax, dword [0x414004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 1
push 0x1f0
mov ebx, ecx
mov dword [ebp - 0x40], edx
push 0x4034a8
lea ecx, [ebp - 0x3c]
call fcn.0040facc
mov edx, dword [ebp - 0x40]
lea edi, [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x60], 0x4040b8
mov esi, eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov ecx, ebx
mov dword [ebp - 0x54], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x4c], esi
mov dword [ebx + 0x108], edx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
call fcn.00404e88
mov edi, eax
mov eax, 0x202
mov dword [ebp - 0x3c], edi
test edi, edi
jns 0x4093fa
mov word [ebp - 0x36], ax
jmp 0x409927
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0xb
mov word [ebp - 0x38], ax
call edi
push 0xc
mov dword [ebp - 0x48], eax
call edi
push 0x31
mov dword [ebp - 0x50], eax
call edi
push 0x32
mov dword [ebp - 0x18], eax
call edi
mov dword [ebp - 0x44], eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov edi, dword [ebp - 0x40]
mov edx, eax
mov ecx, edi
call fcn.00408b3f
push 0x402ed8
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
mov dword [0x414410], eax
test eax, eax
jne 0x40945b
call fcn.00410d32
mov edi, eax
mov eax, 0x210
mov word [ebp - 0x36], ax
jmp 0x409924
and dword [ebp - 0x3c], esi
mov ecx, 0x210
push 0
push 1
push eax
push edi
mov word [ebp - 0x38], cx
call dword [sym.imp.USER32.dll_ChangeWindowMessageFilterEx]
push 0
push dword [ebp - 0x50]
push dword [ebp - 0x48]
push 1
push 0x82
push dword [0x414418]
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [ebx + 0xac], eax
test eax, eax
jne 0x4094a6
call fcn.00410d32
mov edi, eax
mov eax, 0x217
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x217
push 0
push dword [ebp - 0x50]
mov word [ebp - 0x38], ax
push dword [ebp - 0x48]
push 1
push 0x89
push dword [0x414418]
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [ebx + 0xb8], eax
test eax, eax
jne 0x4094e8
call fcn.00410d32
mov edi, eax
mov eax, 0x21a
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x21a
push 0
push dword [ebp - 0x44]
mov word [ebp - 0x38], ax
push dword [ebp - 0x18]
push 1
push 0x8d
push dword [0x414418]
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [ebx + 0xb4], eax
test eax, eax
jne 0x40952a
call fcn.00410d32
mov edi, eax
mov eax, 0x21f
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x21f
push 0
push dword [ebp - 0x44]
mov word [ebp - 0x38], ax
push dword [ebp - 0x18]
push 1
push 0x88
push dword [0x414418]
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [ebx + 0xb0], eax
test eax, eax
jne 0x40956c
call fcn.00410d32
mov edi, eax
mov eax, 0x222
jmp 0x409452
push dword [ebx + 0xac]
and dword [ebp - 0x3c], esi
mov eax, 0x222
push 0
push 0x80
push edi
mov word [ebp - 0x38], ax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x403
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
jne 0x4095ad
call fcn.00410d32
mov edi, eax
mov eax, 0x228
jmp 0x409452
and dword [ebp - 0x3c], esi
mov ecx, 0x228
push 0
push dword [0x414414]
mov word [ebp - 0x38], cx
push 0x30
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x44d
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x14]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
jne 0x4095f9
call fcn.00410d32
mov edi, eax
mov eax, 0x22d
jmp 0x409452
push 2
mov eax, 0x22d
xor ecx, ecx
mov word [ebp - 0x38], ax
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
push 1
push eax
push ecx
push ecx
push ecx
push dword [ebp - 0x18]
mov dword [ebp - 0x3c], ecx
call dword [sym.imp.USER32.dll_SetWindowPos]
test eax, eax
jne 0x409633
call fcn.00410d32
mov edi, eax
mov eax, 0x22e
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x22e
push 0x454
push edi
mov word [ebp - 0x38], ax
call dword [sym.imp.USER32.dll_GetDlgItem]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x18], eax
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
jne 0x40966e
call fcn.00410d32
mov edi, eax
mov eax, 0x230
jmp 0x409452
mov eax, 0x230
xor ecx, ecx
mov word [ebp - 0x38], ax
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
push 2
push 1
dec eax
mov dword [ebp - 0x3c], ecx
push eax
push ecx
push ecx
push ecx
push dword [ebp - 0x18]
call dword [sym.imp.USER32.dll_SetWindowPos]
test eax, eax
jne 0x4096a9
call fcn.00410d32
mov edi, eax
mov eax, 0x231
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x231
push 0x456
push edi
mov word [ebp - 0x38], ax
call dword [sym.imp.USER32.dll_GetDlgItem]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x18], eax
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
jne 0x4096e4
call fcn.00410d32
mov edi, eax
mov eax, 0x233
jmp 0x409452
mov eax, 0x233
xor ecx, ecx
mov word [ebp - 0x38], ax
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
push 2
push 1
dec eax
mov dword [ebp - 0x3c], ecx
push eax
push ecx
push ecx
push ecx
push dword [ebp - 0x18]
call dword [sym.imp.USER32.dll_SetWindowPos]
test eax, eax
jne 0x40971f
call fcn.00410d32
mov edi, eax
mov eax, 0x234
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x234
push 0x3ea
push edi
mov word [ebp - 0x38], ax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x18], eax
test eax, eax
jne 0x40974f
call fcn.00410d32
mov edi, eax
mov eax, 0x239
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x239
push 0x450
push edi
mov word [ebp - 0x38], ax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x44], eax
test eax, eax
jne 0x40977f
call fcn.00410d32
mov edi, eax
mov eax, 0x23c
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x23c
push 0x3e9
push edi
mov word [ebp - 0x38], ax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x48], eax
test eax, eax
jne 0x4097af
call fcn.00410d32
mov edi, eax
mov eax, 0x23f
jmp 0x409452
and dword [ebp - 0x3c], esi
mov eax, 0x23f
mov word [ebp - 0x38], ax
mov eax, dword [0x4144e8]
cmp eax, 2
je 0x409800
cmp eax, 1
je 0x409800
push 1
push 0
push 0x160c
push dword [ebp - 0x18]
call dword [sym.imp.USER32.dll_SendMessageW]
push 1
push 0
push 0x160c
push dword [ebp - 0x44]
call dword [sym.imp.USER32.dll_SendMessageW]
push 1
push 0
push 0x160c
push dword [ebp - 0x48]
call dword [sym.imp.USER32.dll_SendMessageW]
and dword [ebx + 0x70], esi
mov edx, edi
mov ecx, ebx
call fcn.00408f92
mov edi, eax
mov eax, 0x24b
mov dword [ebp - 0x3c], edi
test edi, edi
js 0x4093f1
mov edx, dword [ebp - 0x40]
mov ecx, ebx
mov word [ebp - 0x38], ax
call fcn.0040ba72
mov edi, eax
mov eax, 0x24e
mov dword [ebp - 0x3c], edi
test edi, edi
js 0x4093f1
mov edx, dword [ebp - 0x40]
mov ecx, ebx
mov word [ebp - 0x38], ax
mov dword [ebx + 0x70], 1
call fcn.004099b3
mov edi, eax
mov eax, 0x255
mov dword [ebp - 0x3c], edi
test edi, edi
js 0x4093f1
mov word [ebp - 0x38], ax
mov eax, dword [ebx + 0xdc]
dec eax
je 0x40989f
dec eax
je 0x40987b
dec eax
je 0x40988d
dec eax
jne 0x4098b4
cmp dword [ebx + 0x74], esi
je 0x4098b4
mov edx, dword [ebp - 0x40]
push ecx
mov ecx, ebx
call fcn.0040a80f
jmp 0x4098b4
cmp dword [ebx + 0x74], esi
je 0x4098b4
mov edx, dword [ebp - 0x40]
push ecx
mov ecx, ebx
call fcn.0040a90b
jmp 0x4098b4
push 0
push 0x3ea
push 0x111
push dword [ebp - 0x40]
call dword [sym.imp.USER32.dll_PostMessageW]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x10]
mov edx, eax
lea ecx, [ebp - 0x4c]
call fcn.00408a25
mov esi, dword [ebp - 0x4c]
lea ecx, [ebp - 0x54]
push ecx
push 0x403e04
push esi
mov eax, dword [esi]
call dword [eax]
mov edi, eax
mov eax, 0x26b
mov dword [ebp - 0x3c], edi
test edi, edi
js 0x4093f1
xor edi, edi
mov word [ebp - 0x38], ax
push edi
push edi
push dword [ebp - 0x54]
push 0x40b28d
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebx + 0x9c], eax
test eax, eax
jne 0x40991b
call fcn.00410d32
mov edi, eax
mov eax, 0x26f
jmp 0x409452
mov eax, 0x26f
mov word [ebp - 0x38], ax
mov dword [ebp - 0x3c], edi
test esi, esi
je 0x409931
mov ecx, dword [esi]
push esi
call dword [ecx + 8]
lea ecx, [ebp - 0x60]
call fcn.00411683
lea ecx, [ebp - 0x3c]
call fcn.0040fbc2
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004129cd
mov esp, ebp
pop ebp
ret