Function at 0x4333fe
Capabilities:
Extract resource via kernel32 functions
Get common file path
Get file size
Resolve function by parsing pe exports
Suspend thread

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x304
push ebx
xor ebx, ebx
mov dword [esp + 0x24], ecx
inc ebx
xor eax, eax
mov dword [esp + 0x40], ebx
mov dword [esp + 0x40], 0xffffffff
mov dword [esp + 0x14], 0x37bc7528
push esi
mov dword [esp + 0x44], ebx
push edi
mov dword [esp + 0x48], 0xe1ca2961
mov edi, edx
mov dword [esp + 0x38], 0xfffffff8
mov dword [esp + 0x30], edi
mov dword [esp + 0x18], eax
jmp 0x43345d
mov ecx, dword [esp + 0x18]
mov dword [esp + ecx*4 + 0x228], 0xb5ca9869
inc dword [esp + 0x18]
cmp dword [esp + 0x18], ebx
jl 0x43344a
push 2
mov dword [esp + 0x1c], eax
pop esi
jmp 0x43347f
mov ecx, dword [esp + 0x18]
mov dword [esp + ecx*4 + 0x274], 5
inc dword [esp + 0x18]
cmp dword [esp + 0x18], esi
jl 0x43346c
mov dword [esp + 0x18], eax
jmp 0x43349b
mov ecx, dword [esp + 0x18]
mov dword [esp + ecx*4 + 0x68], 0xaeb5
inc dword [esp + 0x18]
cmp dword [esp + 0x18], ebx
jl 0x43348b
dec dword [esp + 0x38]
mov dword [esp + 0x1c], eax
jmp 0x4334c3
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x4334bf
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
xor eax, eax
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 0x18
jne 0x4334ab
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x1c], eax
jmp 0x4334eb
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x294], 0xffffffff
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 4
jl 0x4334d8
cmp dword [esp + 0x20], 0x5baf43b7
push 8
pop ecx
jl 0x43353a
mov dword [esp + 0x20], ecx
jmp 0x433531
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x14], eax
jmp 0x433526
mov ecx, dword [esp + 0x14]
mov dword [esp + ecx*4 + 0x294], 0xbf8f0aa6
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 4
jl 0x433513
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 0x1b
jge 0x433505
jmp 0x433555
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x433555
push eax
push 0x1f4
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
xor eax, eax
mov dword [esp + 0x20], 0x5d6c05ba
mov dword [esp + 0x14], ebx
mov dword [esp + 0x40], 0xfffb
mov dword [esp + 0x38], 0xb1d6a56c
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x34], 0xc8951bb3
mov dword [esp + 0x38], 0x8f08877e
mov dword [esp + 0x20], eax
jmp 0x4335a2
mov ecx, dword [esp + 0x20]
mov dword [esp + ecx*4 + 0xe0], 0xbaeef20f
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 3
jl 0x43358f
mov dword [esp + 0x20], eax
jmp 0x4335c2
mov ecx, dword [esp + 0x20]
mov dword [esp + ecx*4 + 0x2ac], 0xd6c34f1d
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 4
jl 0x4335af
cmp dword [esp + 0xe0], eax
je 0x433694
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x40], 0xfffc
sbb edx, edx
inc edx
sub edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x14]
neg edx
sbb edx, edx
inc edx
sub ecx, edx
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x38]
sub ecx, 0x3fab614
cmp ecx, 0x27f0
mov ecx, dword [esp + 0x14]
setg dl
xor ebx, ebx
cmp ecx, edx
mov ecx, dword [esp + 0x24]
setne bl
xor edx, edx
cmp ebx, ecx
setg dl
xor ebx, ebx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0xe0]
mov ecx, dword [esp + 0x14]
cmp ecx, edx
mov ecx, dword [esp + 0xe0]
setge bl
xor edx, edx
cmp ebx, ecx
setl dl
mov dword [esp + 0x34], edx
cmp dword [esp + 0x34], eax
je 0x433661
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xe0]
xor ebx, ebx
mov ecx, dword [esp + 0x40]
cmp edx, ecx
setle bl
xor edx, edx
mov dword [esp + 0x38], ebx
mov ecx, dword [esp + 0x38]
cmp ecx, 0xfffffffc
setge dl
xor ebx, ebx
add edx, 0x21b18574
inc ebx
mov ecx, ebx
cmp edx, dword [esp + 0x24]
jge 0x433696
mov ecx, eax
mov dword [esp + 0x2b4], ecx
mov dword [esp + 0x1c], eax
jmp 0x4336b2
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x128], eax
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], esi
jl 0x4336a3
push 3
lea ecx, [esp + 0x1c8]
call fcn.00401e5e
push esi
lea ecx, [esp + 0x168]
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x18], eax
jmp 0x4336f1
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c4]
mov dword [ecx + edx*4], 0x7d45db34
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 3
jl 0x4336db
mov dword [esp + 0x18], eax
jmp 0x433714
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x164]
mov dword [ecx + edx*4], 6
inc dword [esp + 0x18]
cmp dword [esp + 0x18], esi
jl 0x4336fe
mov dword [esp + 0x18], eax
jmp 0x43372f
mov ecx, dword [esp + 0x18]
mov dword [esp + ecx*4 + 0xdc], eax
inc dword [esp + 0x18]
cmp dword [esp + 0x18], ebx
jl 0x433720
mov esi, dword [esp + 0x1c4]
mov ecx, dword [esi]
sub ecx, dword [esi + 4]
neg ecx
sbb ecx, ecx
xor edx, edx
add ecx, 0xfe47
cmp ecx, 0x7ccc
mov ecx, dword [esp + 0x164]
setl dl
mov dword [ecx], edx
xor ecx, ecx
cmp dword [esi], eax
sete cl
mov dword [esp + 0xdc], ecx
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], al
je 0x43377d
call dword [sym.imp.USER32.dll_DestroyCaret]
lea ecx, [esp + 0x164]
call fcn.00401f30
lea ecx, [esp + 0x1c4]
call fcn.00401f30
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
xor eax, eax
mov dword [esp + 0x20], eax
cmp dword [esp + 0x20], 2
jl 0x433fd2
push 2
pop esi
mov edi, 0xffff
mov dword [esp + 0x14], 0xeede0b40
xor edx, edx
mov dword [esp + 0x14], 0x2667
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x40], eax
mov dword [esp + 0x38], ebx
mov dword [esp + 0x34], 0x2275dd36
mov dword [esp + 0x38], 0xffffffff
mov dword [esp + 0x3c], 0x3e1fe01
mov dword [esp + 0x48], 0x1994
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x24]
cmp ecx, ebx
setg dl
xor ecx, ecx
add edx, dword [esp + 0x14]
cmp edx, 0x13b01d91
setg cl
xor ebx, ebx
cmp ecx, 0xffffffff
mov ecx, dword [esp + 0x18]
sete bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [esp + 0x14]
setne dl
sub ecx, edx
je 0x43384c
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x433883
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x433883
mov dword [esp + 0x18], 0xffffffe6
jmp 0x43387c
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x433870
push 0x124e
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
xor eax, eax
mov dword [esp + 0x24], 0x3e25468d
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 0x3c
jg 0x433856
mov eax, dword [esp + 0x18]
mov dword [esp + 0x24], eax
xor eax, eax
mov dword [esp + 0x38], eax
cmp dword [esp + 0x38], eax
je 0x4338a2
cmp dword [esp + 0x18], eax
je 0x4338a2
xor edx, edx
inc edx
jmp 0x4338a4
mov edx, eax
mov ecx, dword [esp + 0x18]
xor ebx, ebx
cmp ecx, edx
mov ecx, dword [esp + 0x18]
setle bl
xor edx, edx
cmp ebx, ecx
setg dl
cmp edx, 0xec73f5cf
sbb ecx, ecx
xor ebx, ebx
neg ecx
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x40], ecx
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
cmp edx, ecx
setg bl
mov dword [esp + 0x38], ebx
xor ebx, ebx
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
cmp ecx, edx
mov ecx, dword [esp + 0x14]
setge bl
xor edx, edx
cmp ebx, ecx
setg dl
imul ecx, edx, 0x5d90
test ecx, ecx
jne 0x433913
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
lea ecx, [esp + 0xf0]
mov dword [esp + 0x48], eax
mov dword [esp + 0x48], eax
push esi
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x3c], 0x4e55b65a
mov dword [esp + 0x18], eax
jmp 0x43395a
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0xf0]
mov dword [ecx + edx*4], 0x342eb90d
inc dword [esp + 0x18]
cmp dword [esp + 0x18], esi
jl 0x433944
xor ebx, ebx
mov dword [esp + 0x18], eax
inc ebx
jmp 0x433979
mov ecx, dword [esp + 0x18]
mov dword [esp + ecx*4 + 0x50], 0x13638ecf
inc dword [esp + 0x18]
cmp dword [esp + 0x18], ebx
jl 0x433969
mov dword [esp + 0x50], ebx
cmp dword [esp + 0x50], eax
jl 0x4339f1
mov dword [esp + 0x3c], 0x18c84b7b
mov ecx, dword [esp + 0x50]
mov esi, dword [esp + 0x50]
mov edx, dword [esp + 0xf0]
mov ecx, dword [edx + ecx*4]
mov dword [edx + esi*4], ecx
mov ecx, dword [esp + 0x50]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x50]
add ecx, 4
add ecx, edx
jne 0x4339c5
mov edx, eax
cmp dword [esp + 0x50], eax
je 0x4339c7
mov edx, ebx
mov ecx, dword [esp + 0x50]
sub edx, ecx
add edx, edi
je 0x4339d9
mov edx, ebx
cmp dword [esp + 0x50], eax
jne 0x4339db
mov edx, eax
mov ecx, dword [esp + 0xf0]
sub edx, dword [ecx]
mov dword [esp + 0x3c], edx
dec dword [esp + 0x50]
jns 0x433989
push 2
pop esi
lea ecx, [esp + 0xf0]
call fcn.00401f30
push dword [esp + 0x68]
movdqa xmm0, xmmword [0xa5dbb0]
lea ecx, [esp + 0x240]
mov dword [esp + 0x40], 0xb43d2717
xor eax, eax
mov dword [esp + 0x40], 0xee491ba6
mov dword [esp + 0x18], 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x44], 0xffffffff
push ecx
mov dword [esp + 0x30], 0x40194ddb
lea ecx, [esp + 0x234]
mov dword [esp + 0x44], 0xfffffff9
mov dword [esp + 0x20], 0xcc2fdcb
push ecx
mov dword [esp + 0x48], 8
lea ecx, [esp + 0x90]
mov dword [esp + 0x48], 0xfffffff8
mov dword [esp + 0x64], 0xeb2391cb
push eax
movdqu xmmword [esp + 0x23c], xmm0
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
call fcn.00401f92
mov dword [esp + 0x34], 0x100
mov dword [esp + 0x4c], edi
mov dword [esp + 0x14], 0
jmp 0x433b18
mov dword [esp + 0x58], 0xffffffff
lea ecx, [esp + 0x20c]
push 4
call fcn.00401e5e
mov dword [esp + 0x58], 0x595ad338
push 8
mov dword [esp + 0x5c], 0x423b19d8
pop eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], 0
jmp 0x433afd
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20c]
mov dword [eax + ecx*4], 0xfffffffa
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 4
jl 0x433ae7
dec dword [esp + 0x38]
lea ecx, [esp + 0x20c]
call fcn.00401f30
dec dword [esp + 0x14]
cmp dword [esp + 0x14], 0xffffffe3
je 0x433ab0
mov dword [esp + 0x18], 0
cmp dword [esp + 0x18], 3
jg 0x433bcd
mov dword [esp + 0x38], 0xfffffffe
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x84]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
xor edx, edx
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x24]
cmp eax, ecx
mov eax, dword [esp + 0x84]
setg dl
xor ecx, ecx
cmp edx, 0xffffffff
setle cl
mov dword [eax + esi*4], ecx
mov eax, dword [esp + 0x3c]
sub eax, dword [esp + 0x28]
je 0x433b93
mov eax, dword [esp + 0x84]
cmp dword [eax + 4], 0
jne 0x433b97
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x4c]
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x58], eax
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 3
jle 0x433b32
push 2
pop esi
lea ecx, [esp + 0x84]
call fcn.00401f30
mov dword [esp + 0x218], 0x197e7c14
lea ecx, [esp + 0x17c]
mov dword [esp + 0x21c], 0x197e7c14
mov dword [esp + 0x220], 0x197e7c14
mov dword [esp + 0x224], 0x197e7c14
mov dword [esp + 0x40], 0xc8210466
push esi
call fcn.00401e5e
mov dword [esp + 0x3c], 0xf2f4a8b1
xor eax, eax
mov dword [esp + 0x3c], 0xfffffffc
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x3c], 0xfde2bbef
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], ebx
mov dword [esp + 0x18], eax
jmp 0x433c5c
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x17c]
mov dword [ecx + edx*4], 0x75c9
inc dword [esp + 0x18]
cmp dword [esp + 0x18], esi
jl 0x433c46
mov dword [esp + 0x18], eax
jmp 0x433c7b
mov eax, dword [esp + 0x18]
mov dword [esp + eax*4 + 0x2e0], 0x99d94b4b
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 4
jl 0x433c68
mov eax, dword [esp + 0x17c]
lea ecx, [esp + 0x17c]
mov eax, dword [eax]
mov dword [esp + 0x3c], eax
inc dword [esp + 0x28]
call fcn.00401f30
mov dword [esp + 0x14], esi
cmp dword [esp + 0x14], 3
jl 0x433fb8
push esi
lea ecx, [esp + 0x1b0]
call fcn.00401e5e
mov dword [esp + 0x3c], 0xf2f4a8b1
xor eax, eax
mov dword [esp + 0x3c], 0xfffffffc
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x3c], 0xfde2bbef
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], ebx
mov dword [esp + 0x18], eax
jmp 0x433cfd
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1ac]
mov dword [ecx + edx*4], 0x75c9
inc dword [esp + 0x18]
cmp dword [esp + 0x18], esi
jl 0x433ce7
mov dword [esp + 0x18], eax
jmp 0x433d1c
mov eax, dword [esp + 0x18]
mov dword [esp + eax*4 + 0x2f0], 0x99d94b4b
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 4
jl 0x433d09
mov eax, dword [esp + 0x1ac]
lea ecx, [esp + 0x1ac]
mov eax, dword [eax]
mov dword [esp + 0x3c], eax
inc dword [esp + 0x28]
call fcn.00401f30
mov dword [esp + 0x24], 0x7d7c1188
xor eax, eax
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x28], 0xdaa237f4
mov dword [esp + 0x3c], 0xfffffff7
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x4c], 0x9235
mov dword [esp + 0x1c], eax
jmp 0x433d87
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x2c8], 0x131d
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 3
jl 0x433d74
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
neg esi
sbb esi, esi
xor edx, edx
neg esi
cmp esi, ecx
setle dl
cmp ebx, edx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, 0xcee3
setne dl
cmp edx, 0xfffffffc
je 0x433dc9
mov ecx, ebx
cmp dword [esp + 0x18], eax
jne 0x433dcb
mov ecx, eax
xor edx, edx
cmp ecx, 0x58efa97f
mov ecx, dword [esp + 0x18]
setle dl
xor ebx, ebx
cmp edx, ecx
push 2
setge bl
xor edx, edx
add ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
cmp ebx, ecx
mov ecx, dword [esp + 0x1c]
setl dl
xor ebx, ebx
cmp edx, ecx
mov ecx, dword [esp + 0x1c]
setg bl
xor edx, edx
cmp ebx, ecx
setge dl
add edx, dword [esp + 0x1c]
mov dword [esp + 0x2c], edx
cmp dword [esp + 0x2c], 0xd2ae857b
mov ecx, dword [esp + 0x1c]
sbb edx, edx
xor ebx, ebx
neg edx
cmp edx, ecx
setle bl
cmp edi, ebx
sbb esi, esi
neg esi
sub esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
neg esi
sbb esi, esi
xor edx, edx
inc esi
cmp esi, ecx
pop esi
setle dl
imul edx, edx, 0x9ab8
inc edx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x387f
setle cl
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x18], eax
jmp 0x433e80
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x433e7c
push eax
push 0x22b9
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
xor eax, eax
inc dword [esp + 0x18]
cmp dword [esp + 0x18], esi
jle 0x433e63
xor ebx, ebx
lea ecx, [esp + 0x140]
inc ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x58], 0x1c5a3d7f
mov dword [esp + 0x28], 0xf782
push ebx
call fcn.00401e5e
mov dword [esp + 0x34], 0xb8561371
mov dword [esp + 0x3c], 0x68939f5f
mov dword [esp + 0x4c], 0x382e
mov dword [esp + 0x1c], 0
jmp 0x433ede
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x140]
mov dword [eax + ecx*4], ebx
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], ebx
jl 0x433ecc
mov eax, dword [esp + 0x3c]
xor ecx, ecx
mov eax, dword [esp + 0x34]
test eax, eax
setle cl
inc ecx
je 0x433efa
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x140]
or dword [eax], 0xffffffff
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x34], eax
mov byte [esp + 0x13], 0
cmp byte [esp + 0x13], 0
je 0x433f52
push 0x1c1f
push 0x223c
push 0x156d
push 0x261c
push 0xc83
push 0x12e4
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_RoundRect]
lea ecx, [esp + 0x140]
call fcn.00401f30
mov eax, dword [esp + 0x40]
inc dword [esp + 0x40]
test eax, eax
jne 0x433f6e
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x58]
xor ecx, ecx
test eax, eax
mov eax, 0xef3b0639
setle cl
cmp eax, ecx
sbb eax, eax
inc eax
imul eax, dword [esp + 0x38]
imul eax, dword [esp + 0x20]
cmp dword [esp + 0x24], eax
jle 0x433f9f
xor eax, eax
cmp dword [esp + 0x20], eax
je 0x433fa1
mov ecx, ebx
jmp 0x433fa3
xor eax, eax
mov ecx, eax
mov dword [esp + 0x3c], ecx
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 3
jge 0x433cae
jmp 0x433fba
xor eax, eax
inc dword [esp + 0x20]
cmp dword [esp + 0x20], esi
jge 0x4337b4
mov edi, dword [esp + 0x30]
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [esp + 0x30], eax
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x433ffe
push 0x25bb
push 0xb36
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.USER32.dll_DrawEdge]
xor eax, eax
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x434017
push 0x2515
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
xor eax, eax
mov dword [esp + 0x20], eax
jmp 0x4342a2
push 2
lea ecx, [esp + 0x1e0]
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x18], eax
jmp 0x434049
mov ecx, dword [esp + 0x18]
mov dword [esp + ecx*4 + 0x9c], 0x2f4a8b10
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 4
jl 0x434036
mov dword [esp + 0x18], eax
jmp 0x43406c
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1dc]
mov dword [ecx + edx*4], 0xffff
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 2
jl 0x434056
cmp dword [esp + 0xa0], 0xfffffffa
jb 0x43409e
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], al
je 0x43411e
push 0x5e2
call esi
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
jmp 0x43411e
push ebx
lea ecx, [esp + 0x150]
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x1c], eax
jmp 0x4340c9
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14c]
mov dword [ecx + edx*4], 0xd4ea6801
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], ebx
jl 0x4340b3
mov ecx, dword [esp + 0x14c]
mov dword [ecx], eax
cmp dword [esp + 0xa0], eax
je 0x4340f6
mov eax, dword [esp + 0xa0]
mov eax, dword [esp + 0xa8]
mov eax, dword [esp + 0xa4]
mov eax, dword [esp + 0xa0]
xor ecx, ecx
mov eax, dword [esp + 0xa0]
test eax, eax
setg cl
mov dword [esp + 0xa4], ecx
lea ecx, [esp + 0x14c]
call fcn.00401f30
lea ecx, [esp + 0x1dc]
call fcn.00401f30
xor eax, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x48], ebx
mov dword [esp + 0x1c], eax
jmp 0x434149
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x2a4], eax
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 2
jl 0x43413a
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x48], ecx
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], al
je 0x434172
push ebx
push 0x26df
push eax
push eax
call dword [sym.imp.KERNEL32.dll_SignalObjectAndWait]
xor eax, eax
mov ecx, dword [esp + 0x20]
cmp dword [esp + ecx*4 + 0x128], eax
jne 0x4342ac
mov dword [esp + 0x14], eax
mov dword [esp + 0x30], 0xdf3d37a5
mov dword [esp + 0x30], 0x5145
mov dword [esp + 0x14], 0xffffffe6
cmp dword [esp + 0x14], 0xfffffffc
jle 0x43426c
mov dword [esp + 0x18], 9
cmp dword [esp + 0x18], eax
je 0x4341ec
mov dword [esp + 0x18], eax
jmp 0x4341e3
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x4341df
push 0x12ba
push eax
push 0x19cd
call esi
push eax
call dword [sym.imp.USER32.dll_GetDlgItemTextW]
xor eax, eax
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 6
je 0x4341be
jmp 0x43425a
push ebx
lea ecx, [esp + 0x15c]
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x1c], eax
jmp 0x434217
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x158]
mov dword [ecx + edx*4], 0xfaafe30f
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], ebx
jl 0x434201
mov dword [esp + 0x18], eax
jmp 0x434234
mov ecx, dword [esp + 0x158]
mov ecx, dword [ecx]
mov dword [esp + 0x30], ecx
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 0x12
jne 0x434223
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], al
je 0x43424e
call esi
push eax
call dword [sym.imp.USER32.dll_SetFocus]
lea ecx, [esp + 0x158]
call fcn.00401f30
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 0xfffffffc
push 0
pop eax
jg 0x4341aa
mov dword [esp + 0x14], eax
jmp 0x43428a
mov dword [esp + 0x30], 0x9646
imul ecx, dword [esp + 0x14], 0x10c1
mov dword [esp + 0x30], ecx
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 2
jg 0x434272
mov ecx, dword [esp + 0x20]
cmp dword [esp + ecx*4 + 0x128], eax
jne 0x4342ac
inc dword [esp + 0x20]
cmp dword [esp + 0x20], ebx
jle 0x434020
push dword [esp + 0x2c]
lea ecx, [esp + 0xb0]
push 0xe48
push ecx
push edi
push eax
call fcn.00439ff6
add esp, 0x14
lea ecx, [esp + 0x170]
push 2
pop ebx
push ebx
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x14], eax
jmp 0x4342f5
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x170]
mov dword [ecx + edx*4], 5
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ebx
jl 0x4342df
mov dword [esp + 0x14], eax
jmp 0x434310
mov ecx, dword [esp + 0x14]
mov dword [esp + ecx*4 + 0x300], eax
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 4
jl 0x434301
mov eax, dword [esp + 0x170]
lea ecx, [esp + 0x170]
mov dword [eax], 9
call fcn.00401f30
xor edi, edi
inc edi
xor eax, eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x1c], eax
jmp 0x434352
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x2d4], 0x6310feca
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 3
jl 0x43433f
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], al
je 0x43436d
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegUnLoadKeyW]
xor eax, eax
mov dword [esp + 0x14], 0x67d50f82
mov dword [esp + 0x1c], eax
jmp 0x4343a7
inc dword [esp + 0x14]
mov dword [esp + 0x14], eax
jmp 0x43439d
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x434399
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
xor eax, eax
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ebx
jle 0x434385
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], ebx
jle 0x43437b
mov dword [esp + 0x2c], 0xfffffffc
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x4343c9
push eax
call dword [sym.imp.KERNEL32.dll_SuspendThread]
xor eax, eax
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x4343dd
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
xor eax, eax
mov dword [esp + 0x58], 0x1fad
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x2c], 0xb586fa66
mov dword [esp + 0x30], 0x3758
mov dword [esp + 0x1c], eax
jmp 0x434412
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0xb0], eax
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 3
jl 0x434403
mov dword [esp + 0x20], 0xffffffff
jmp 0x43459b
mov dword [esp + 0x14], 0x88adae8c
mov dword [esp + 0x2c], 0xfffffffd
mov dword [esp + 0x14], eax
cmp dword [esp + 0x14], ebx
jg 0x43456f
mov dword [esp + 0x18], 5
lea ecx, [esp + 0x188]
push edi
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x1c], eax
jmp 0x434477
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x188]
mov dword [ecx + edx*4], 0xbda73a15
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], edi
jl 0x434461
mov dword [esp + 0x18], ebx
cmp dword [esp + 0x18], eax
jl 0x434553
mov dword [esp + 0x28], 0x37828451
xor ebx, ebx
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x28], eax
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
cmp edx, ecx
mov ecx, dword [esp + 0x20]
setge bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [esp + 0x20]
setle dl
mov dword [esp + 0x2c], edx
xor edx, edx
cmp ecx, dword [esp + 0x2c]
setle dl
mov dword [esp + 0x2c], edx
xor edx, edx
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + ecx*4 + 0xb0]
cmp ecx, 2
mov ecx, dword [esp + 0x18]
setne dl
xor ebx, ebx
mov dword [esp + 0x2c], edx
mov edx, dword [esp + ecx*4 + 0xb0]
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + ecx*4 + 0xb0]
cmp edx, ecx
setl bl
xor ecx, ecx
cmp dword [esp + 0x2c], 0xffffffff
setne cl
cmp ebx, ecx
je 0x434514
mov ecx, dword [esp + 0x20]
cmp dword [esp + 0xb0], 0xf844ba92
je 0x43452c
mov ecx, edi
cmp dword [esp + 0xb8], eax
jne 0x43452e
mov ecx, eax
mov edx, dword [esp + 0x20]
imul edx, ecx
mov ecx, dword [esp + 0x188]
mov dword [ecx], edx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x2c], ecx
dec dword [esp + 0x18]
jns 0x43448b
push 2
pop ebx
lea ecx, [esp + 0x188]
call fcn.00401f30
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ebx
jle 0x434444
xor eax, eax
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x434597
push eax
push 0x18ae
push 0x2489
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_MoveToEx]
xor eax, eax
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 5
jne 0x434426
mov dword [esp + 0x14], 0x477862fd
push 2
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x20], eax
pop esi
jmp 0x4345d2
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x204], 0x8c245e32
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], esi
jl 0x4345bf
mov dword [esp + 0x14], eax
jmp 0x4346e3
mov dword [esp + 0x38], 0x955205
mov dword [esp + 0x28], 0xbf748bbe
mov dword [esp + 0x28], 0xfffffffc
mov dword [esp + 0x1c], eax
jmp 0x43460f
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x70], 0x9ba095a9
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], esi
jl 0x4345ff
mov esi, dword [esp + 0x74]
mov ecx, dword [esp + 0x14]
neg esi
sbb esi, esi
neg esi
neg ecx
sbb ecx, ecx
neg ecx
cmp ecx, dword [esp + 0x14]
jg 0x434639
cmp dword [esp + 0x24], eax
jne 0x434639
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x38]
xor ebx, ebx
mov ecx, dword [esp + 0x24]
cmp ecx, edx
setge bl
sub ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
cmp ecx, ebx
setle dl
mov dword [esp + 0x28], edx
cmp dword [esp + 0x28], eax
je 0x43466a
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x74]
sub edx, dword [esp + 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x6d9e
setge cl
xor edx, edx
sub ecx, 0x4548
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x28]
cmp esi, ecx
sete dl
xor ebx, ebx
imul edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x74]
cmp edx, 4
setne bl
xor edx, edx
cmp ebx, ecx
setg dl
xor ecx, ecx
cmp edx, 9
setne cl
mov dword [esp + 0x204], ecx
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x4346dc
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegConnectRegistryW]
xor eax, eax
inc dword [esp + 0x14]
push 2
pop esi
cmp dword [esp + 0x14], 7
jg 0x4345e1
mov dword [esp + 0x1c], eax
jmp 0x434704
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x5c], 0x8ec0ae97
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], edi
jl 0x4346f4
mov dword [esp + 0x5c], eax
jmp 0x435a35
mov dword [esp + 0x18], 0xdb2bc40e
lea ecx, [esp + 0x1a0]
mov dword [esp + 0x14], 0xd0d658ed
mov dword [esp + 0x28], 0x3cb8e004
mov dword [esp + 0x28], 0xfa3c9e4a
push 3
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x1c], eax
jmp 0x43475f
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1a0]
mov dword [ecx + edx*4], 0xce005ab1
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 3
jl 0x434749
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], al
je 0x434781
push eax
push 0x1ef7
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
xor eax, eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x14], eax
je 0x4347d6
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x14], 0x1e707165
je 0x4347a9
mov ecx, edi
cmp dword [esp + 0x18], eax
jne 0x4347ab
mov ecx, eax
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x14]
add ecx, 0x7f58
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [esp + 0x18]
jge 0x4347c8
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x14], eax
jne 0x4347de
mov esi, eax
cmp dword [esp + 0x18], eax
je 0x4347e0
mov esi, edi
mov ecx, dword [esp + 0x18]
xor edx, edx
cmp esi, ecx
mov ecx, dword [esp + 0x18]
setge dl
xor ebx, ebx
cmp edx, 0xcb8ce3e
setle bl
xor edx, edx
cmp ebx, ecx
setge dl
mov dword [esp + 0x28], edx
cmp dword [esp + 0x28], eax
je 0x434813
mov edx, edi
cmp dword [esp + 0x18], eax
jne 0x434815
mov edx, eax
mov eax, dword [esp + 0x18]
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x18]
cmp ecx, eax
lea ecx, [esp + 0x1a0]
setl dl
add edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1a0]
mov dword [eax], edx
call fcn.00401f30
mov dword [esp + 0x24], 0x6cce57bf
mov dword [esp + 0x24], 0xe0cf
mov dword [esp + 0x1c], 0xd9532bb1
mov dword [esp + 0x28], 9
mov dword [esp + 0x14], 0x6718e503
mov dword [esp + 0x38], 0x3413f087
mov dword [esp + 0x34], 0xfffffff9
mov dword [esp + 0x2c], 0x366
mov dword [esp + 0x30], 0x4067bc62
inc dword [esp + 0x24]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
xor eax, eax
cmp dword [esp + 0x1c], eax
je 0x43492d
mov edx, eax
cmp dword [esp + 0x14], eax
je 0x4348b6
mov edx, edi
mov ecx, dword [esp + 0x24]
add edx, 0xffff64d9
neg edx
push 2
sbb edx, edx
xor ebx, ebx
inc edx
cmp edx, ecx
pop esi
setg bl
sub ebx, dword [esp + 0x1c]
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
mov dword [esp + 0x38], ebx
mov ecx, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + 0x38]
mov ecx, dword [esp + 0x14]
mov ecx, dword [esp + 0x34]
cmp ecx, 0x2589d389
mov ecx, dword [esp + 0x2c]
setl dl
xor ebx, ebx
imul edx, edx, 0x511b
cmp edx, ecx
setle bl
xor ecx, ecx
cmp ebx, esi
setg cl
cmp dword [esp + 0x1c], ecx
je 0x434930
mov ecx, edi
jmp 0x434932
push 2
pop esi
mov ecx, eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x24], 0xa
cmp dword [esp + 0x24], 7
jg 0x4354e2
push dword [esp + 0x68]
movdqa xmm0, xmmword [0xa5dbf0]
lea ecx, [esp + 0x260]
mov dword [esp + 0x30], eax
mov dword [esp + 0x3c], 6
mov dword [esp + 0x30], 0x534bf8f0
mov dword [esp + 0x4c], 5
mov dword [esp + 0x44], 3
mov dword [esp + 0x30], 0xfffffffb
push ecx
mov dword [esp + 0x44], 0xffffffff
lea ecx, [esp + 0x254]
mov dword [esp + 0x34], 0x754320e3
mov dword [esp + 0x34], 0xffffffff
push ecx
mov dword [esp + 0x34], 0xed6b6572
lea ecx, [esp + 0xcc]
mov dword [esp + 0x38], 0xffffffff
mov dword [esp + 0x58], 0xe23a266d
push eax
movdqu xmmword [esp + 0x25c], xmm0
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
call fcn.00401f92
xor eax, eax
mov dword [esp + 0x34], 0x6b43
mov dword [esp + 0x30], eax
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], al
je 0x434a11
push 0x187b
push eax
push eax
call dword [sym.imp.GDI32.dll_TranslateCharsetInfo]
mov eax, dword [esp + 0x2c]
xor edx, edx
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x48]
dec dword [esp + 0x34]
mov eax, dword [esp + 0x3c]
mov esi, dword [esp + 0xc0]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x38]
cmp eax, ecx
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x4c]
setl dl
xor ebx, ebx
cmp edx, dword [esi + 4]
setle bl
xor edx, edx
cmp ecx, eax
mov ecx, 0xa8fad749
setl dl
xor eax, eax
cmp edx, ebx
setle al
cmp ecx, eax
mov eax, dword [esp + 0x40]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setg cl
mov dword [esi + 4], ecx
lea ecx, [esp + 0xc0]
call fcn.00401f30
mov dword [esp + 0x20], 0xfffffffa
lea ecx, [esp + 0x108]
push edi
call fcn.00401e5e
mov dword [esp + 0x30], 0xe86524f2
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], 0x3ca955a
mov dword [esp + 0x14], eax
jmp 0x434acc
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x108]
mov dword [ecx + edx*4], 0x5b57fd54
inc dword [esp + 0x14]
cmp dword [esp + 0x14], edi
jl 0x434ab6
push 2
mov dword [esp + 0x18], eax
pop esi
jmp 0x434aeb
mov ecx, dword [esp + 0x14]
mov dword [esp + ecx*4 + 0x60], 0x4c506d44
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x434adb
mov dword [esp + 0x64], eax
cmp dword [esp + 0x64], eax
jl 0x434bf4
mov dword [esp + 0x14], 0xba1bf2b2
mov dword [esp + 0x14], eax
cmp dword [esp + 0x14], eax
jg 0x434bcc
mov dword [esp + 0x1c], eax
jmp 0x434b2e
mov ecx, dword [esp + 0x1c]
mov dword [esp + ecx*4 + 0x1e8], 0xfffffff8
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], esi
jl 0x434b1b
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x108]
cmp dword [ecx + edx*4], eax
jne 0x434b7e
mov esi, dword [esp + 0x64]
xor ebx, ebx
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
cmp ecx, edx
mov ecx, dword [esp + 0x108]
setne bl
xor edx, edx
imul ebx, dword [ecx + esi*4]
mov ecx, dword [esp + 0x14]
cmp ecx, ebx
setl dl
cmp edx, 0xf3817d1d
sbb ecx, ecx
inc ecx
sub ecx, dword [esp + 0x64]
mov ecx, eax
je 0x434b80
mov ecx, edi
mov dword [esp + 0x28], ecx
mov esi, 0x4d1878ab
mov ecx, dword [esp + 0x28]
xor edx, edx
add ecx, ecx
sub esi, ecx
mov ecx, dword [esp + 0x14]
cmp esi, ecx
setg dl
mov dword [esp + 0x1ec], edx
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x434bbb
push 0x1b4b
call dword [sym.imp.USER32.dll_MessageBeep]
xor eax, eax
inc dword [esp + 0x14]
push 2
pop esi
cmp dword [esp + 0x14], eax
jle 0x434b15
mov dword [esp + 0x14], eax
cmp dword [esp + 0x14], eax
jl 0x434bea
mov dword [esp + 0x48], 0x64c9
cmp dword [esp + 0x48], eax
jne 0x434bea
dec dword [esp + 0x14]
jns 0x434bd6
dec dword [esp + 0x64]
jns 0x434aff
lea ecx, [esp + 0x108]
call fcn.00401f30
mov dword [esp + 0x20], 0x14
jmp 0x4354c5
push 3
pop ebx
mov eax, 0xffff
lea ecx, [esp + 0x90]
mov dword [esp + 0x18], eax
push ebx
call fcn.00401e5e
push 8
pop eax
mov dword [esp + 0x34], eax
lea ecx, [esp + 0x1b8]
push esi
call fcn.00401e5e
xor eax, eax
mov dword [esp + 0x30], 0xffffffff
mov dword [esp + 0x14], eax
jmp 0x434c5d
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x90]
or dword [ecx + edx*4], 0xffffffff
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ebx
jl 0x434c4a
mov dword [esp + 0x14], eax
jmp 0x434c7f
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1b8]
mov dword [ecx + edx*4], 0x5634
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x434c69
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
cmp ecx, dword [esp + 0x18]
jge 0x434c9b
cmp dword [esp + 0x20], 0xb
jge 0x434c0d
dec dword [esp + 0x24]
cmp dword [esp + 0x24], 7
push 0
pop eax
jle 0x434949
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edi
mov dword [esp + 0x24], eax
jmp 0x4354ff
mov ecx, dword [esp + 0x24]
mov dword [esp + ecx*4 + 0x27c], eax
inc dword [esp + 0x24]
cmp dword [esp + 0x24], esi
jl 0x4354f0
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x30], ecx
mov byte [esp + 0x13], al
cmp byte [esp + 0x13], 0
je 0x435528
push edi
push 0x26df
push eax
push eax
call dword [sym.imp.KERNEL32.dll_SignalObjectAndWait]
xor eax, eax
mov byte [esp + 0x13], al
mov dword [esp + 0x18], eax
mov dword [esp + 0x3c], 4
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x24], eax
jmp 0x435559
mov ecx, dword [esp + 0x24]
mov dword [esp + ecx*4 + 0x1f0], 0xed15de05
inc dword [esp + 0x24]
cmp dword [esp + 0x24], 3
jl 0x435546
mov dword [esp + 0x18], 0x19
jmp 0x435698
mov dword [esp + 0x2c], 0xd581
mov dword [esp + 0x20], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x4c], edi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x20], esi
cmp dword [esp + 0x20], eax
jl 0x435694
mov dword [esp + 0x34], 0xfffd
mov dword [esp + 0x14], eax
jmp 0x4355b8
mov ecx, dword [esp + 0x14]
mov dword [esp + ecx*4 + 0x25c], 0x329ef4a0
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 3
jl 0x4355a5
mov dword [esp + 0x14], eax
jmp 0x4355d8
mov ecx, dword [esp + 0x14]
mov dword [esp + ecx*4 + 0x194], 0x23f
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 3
jl 0x4355c5
mov ecx, dword [esp + 0x30]
neg ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
cmp ecx, 0xffffffff
mov ecx, dword [esp + 0x34]
setg bl
sub ecx, 0x3e93d0b5
xor edx, edx
cmp ebx, ecx
setle dl
xor ebx, ebx
sub edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov dword [esp + ecx*4 + 0x1f0], edx
dec dword [esp + 0x198]
mov edx, dword [esp + 0x19c]
mov ecx, dword [esp + 0x34]
cmp ecx, edx
mov ecx, dword [esp + 0x260]
setl bl
xor edx, edx
cmp ecx, edi
mov dword [esp + 0x4c], ebx
mov ecx, dword [esp + 0x48]
setle dl
xor ebx, ebx
cmp edx, ecx
sete bl
sub ebx, dword [esp + 0x34]
neg ebx
sbb ebx, ebx
add ebx, 2
add ebx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x20]
neg ebx
sbb ebx, ebx
inc ebx
mov ecx, dword [esp + ecx*4 + 0x1f0]
mov dword [esp + 0x2c], ebx
xor ebx, ebx
cmp dword [esp + 0x2c], 0x3be4
setle bl
xor edx, edx
cmp ecx, dword [esp + 0x4c]
setl dl
xor ecx, ecx
cmp edx, ebx
setne cl
mov dword [esp + 0x4c], ecx
dec dword [esp + 0x20]
jns 0x435597
dec dword [esp + 0x18]
cmp dword [esp + 0x18], 0xffffffe3
jle 0x43556d
cmp byte [esp + 0x13], 0
je 0x435a31
push dword [esp + 0xec]
movdqa xmm0, xmmword [0xa5db90]
lea ecx, [esp + 0x250]
push ecx
lea ecx, [esp + 0x244]
mov dword [esp + 0x20], 0x7e2799ac
push ecx
mov dword [esp + 0x28], 0xcd1b7e2
lea ecx, [esp + 0xd8]
push eax
movdqu xmmword [esp + 0x24c], xmm0
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], eax
call fcn.00401f92
mov dword [esp + 0x40], 0xffffffff
xor eax, eax
mov dword [esp + 0x48], 0xfffffffe
mov dword [esp + 0x4c], 0x8f9e473b
mov dword [esp + 0x2c], 0xfffffffc
mov dword [esp + 0x38], 0x1208afae
mov dword [esp + 0x3c], 0x69e1cf7f
mov dword [esp + 0x24], eax
jmp 0x43574c
mov ecx, dword [esp + 0x24]
mov dword [esp + ecx*4 + 0x6c], eax
inc dword [esp + 0x24]
cmp dword [esp + 0x24], edi
jl 0x435740
mov dword [esp + 0x18], eax
jmp 0x435a09
cmp dword [esp + 0x18], 0xffffffee
jle 0x43575b
inc dword [esp + 0x5c]
cmp dword [esp + 0x5c], 0x1b
jg 0x434713
push 4
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x28], eax
pop edx
jmp 0x435a64
mov ecx, dword [esp + 0x24]
mov dword [esp + ecx*4 + 0x284], 0xffffffff
inc dword [esp + 0x24]
cmp dword [esp + 0x24], edx
jl 0x435a51
cmp dword [esp + 0x14], 0x5baf43b7
jl 0x435ab1