Function at 0x4304a4
Capabilities:
Clear file content

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d8
push ebx
push esi
push edi
push 4
pop ebx
mov dword [ebp - 0xc], ebx
xor eax, eax
mov dword [ebp - 0x30], 0xf9132f4b
mov dword [ebp - 0x28], 0xfffffffa
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], 0xd4f95201
mov byte [ebp - 0x45], dl
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0xc], eax
je 0x43060d
mov dword [ebp - 0x3c], 0xfe01bd97
lea ecx, [ebp - 0xac]
push ebx
call fcn.00430131
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x430509
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xac]
or dword [ecx + edx*4], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x4304f9
mov ecx, dword [ebp - 0x3c]
xor edi, edi
mov esi, dword [ebp - 0xac]
inc edi
mov dword [esi + 4], ecx
test ecx, ecx
je 0x430544
mov dword [ebp - 0xc], eax
jmp 0x430539
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0xac]
mov dword [eax + ecx*4], 8
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jle 0x430526
jmp 0x4305fb
mov dword [ebp - 0x24], 0xe3bc4aee
mov dword [ebp - 0x14], 0x3758
mov dword [ebp - 0x10], eax
jmp 0x430564
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x1a8], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x430557
cmp dword [ebp - 0xc], eax
je 0x43057a
mov dword [ebp - 0x3c], 0xffff
mov dword [ebp - 0x3c], eax
jmp 0x4305a0
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x4305a0
push 0xf50
push 0x231
push 0x68d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_CheckRadioButton]
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x4305c8
mov ecx, dword [ebp - 0xc]
xor ecx, ecx
cmp dword [esi + 4], eax
mov eax, dword [ebp - 0xac]
setg cl
xor edx, edx
cmp ecx, edi
setl dl
imul edx, dword [eax + 0xc]
test edx, edx
jne 0x4305c8
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xac]
cmp dword [eax], edi
setle cl
xor eax, eax
cmp ecx, 0xffffffff
setl al
mov dword [esi + 4], eax
mov dword [ebp - 0x19c], eax
lea ecx, [ebp - 0xac]
call fcn.00430203
xor eax, eax
jmp 0x43069c
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x3c], 0x29add925
mov dword [ebp - 0x10], eax
jmp 0x430631
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x1c0], 0x7be6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x430620
mov edx, dword [ebp - 0x14]
xor ebx, ebx
mov ecx, dword [ebp - 0x14]
cmp edx, ecx
setge bl
mov dword [ebp - 0x24], ebx
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x28], ecx
mov esi, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
neg esi
sbb esi, esi
xor edi, edi
inc edi
inc esi
mov ecx, edi
sub ecx, edx
mov edx, 0xcb1743e6
sub esi, ecx
neg esi
sbb esi, esi
inc esi
add esi, dword [ebp - 0x30]
mov dword [ebp - 0x1b4], esi
mov ecx, dword [ebp - 0x24]
cmp edx, ecx
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], edi
jne 0x430697
mov ecx, edi
cmp dword [ebp - 0xc], eax
jne 0x430699
mov ecx, eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x3c], 0xfffffffe
mov dword [ebp - 0x10], eax
jmp 0x4306c3
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0xd4], 0xffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x4306b2
mov dword [ebp - 0x20], 0xfffffff6
cmp dword [ebp - 0x20], 0xffffffea
jne 0x4307a3
mov ecx, 0x1589
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x24], 0xa6b719d8
mov dword [ebp - 0x3c], 0x3e32883e
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x43070b
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
cmp dword [ebp - 0x20], eax
jg 0x430755
cmp dword [ebp - 0x64], eax
je 0x43074f
mov ecx, dword [ebp - 0x6c]
add ecx, dword [ebp - 0x18]
je 0x430724
mov esi, edi
cmp dword [ebp - 0x64], eax
jne 0x430726
mov esi, eax
mov ecx, dword [ebp - 0x64]
xor edx, edx
cmp ecx, esi
setge dl
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x64]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0xd4]
jge 0x430749
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xd4]
mov esi, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x68]
dec esi
neg esi
sbb esi, esi
xor edx, edx
inc esi
cmp esi, ecx
mov ecx, dword [ebp - 0x64]
setne dl
xor ebx, ebx
cmp edx, ecx
mov ecx, dword [ebp - 0xd4]
setle bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [ebp - 0x68]
sete dl
xor ebx, ebx
cmp edx, ecx
mov ecx, dword [ebp - 0x64]
setge bl
sub ebx, ecx
mov ecx, 0x1589
mov dword [ebp - 0x3c], ebx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffea
je 0x4306df
mov dword [ebp - 0x18], eax
jmp 0x4307c5
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4307c2
push eax
push eax
push 0x8c
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x38
jge 0x4307a8
push 2
pop ebx
mov dword [ebp - 0xc], 0x90ac204e
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x24], 0x4a520274
mov dword [ebp - 0x10], 0x2cc9105f
push ebx
call fcn.00430131
xor eax, eax
mov dword [ebp - 0x1c], 0x77b6
push 0xfffffffffffffff7
mov dword [ebp - 0x34], eax
pop esi
jmp 0x43080a
mov ecx, dword [ebp - 0x34]
mov dword [ebp + ecx*4 - 0x74], esi
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], edi
jl 0x430800
mov dword [ebp - 0x34], eax
jmp 0x430823
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0xc8]
mov dword [ecx + edx*4], edi
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], ebx
jl 0x430814
mov dword [ebp - 0xc], esi
cmp dword [ebp - 0xc], 0xffffffed
je 0x4308c7
xor esi, esi
push ebx
lea ecx, [ebp - 0xf8]
call fcn.00430131
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x10], esi
jmp 0x43085a
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xf8]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x43084b
cmp dword [ebp - 0xc], esi
jne 0x43089b
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [ebp - 0x24], eax
mov eax, 0xebf8
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
sub ecx, eax
mov eax, dword [ebp - 0xf8]
cmp dword [eax + 4], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc8]
setne dl
sub ecx, edx
mov dword [eax], ecx
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 0xf8]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xf8]
mov eax, dword [eax + 4]
mov dword [ebp - 0x3c], eax
call fcn.00430203
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xffffffed
jne 0x430837
xor eax, eax
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc8]
sub edx, dword [ecx]
je 0x4308f3
mov dword [ebp - 0x3c], 0x90aec51
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], 0xac30bca0
jmp 0x430952
mov dword [ebp - 0x3c], 0xfffffff8
mov dword [ebp - 0x28], 0x9fa18394
mov dword [ebp - 0x10], eax
jmp 0x430917
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x1d8], 0xd9780293
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x430906
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x430934
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_KillTimer]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x3c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setne cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1cc], eax
lea ecx, [ebp - 0xc8]
call fcn.00430203
mov esi, dword [0x4ad5ec]
xor eax, eax
mov dword [ebp - 0x2c], 0x754320e3
mov dword [ebp - 0x10], 5
mov dword [ebp - 0x1c], 8
mov dword [ebp - 0x28], 6
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x28], 0xc914a3a6
mov byte [ebp - 5], al
mov dword [ebp - 0x3c], esi
cmp byte [ebp - 5], al
je 0x4309a5
push 0xc0a
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
xor eax, eax
mov ecx, dword [ebp - 0x2c]
xor edx, edx
cmp ecx, edi
setle dl
xor ebx, ebx
mov dword [ebp - 0x10], edx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
cmp edx, ecx
mov edx, 0xdd93ba6a
setge bl
xor ecx, ecx
cmp ebx, 0xffffffff
setge cl
cmp edx, ecx
sbb ecx, ecx
neg ecx
sub ecx, dword [ebp - 0x2c]
cmp ecx, dword [ebp - 0x2c]
jne 0x4309ef
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x10]
cmp ecx, edi
jle 0x430a00
mov ecx, edi
cmp dword [ebp - 0x10], eax
jne 0x430a02
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x24], ecx
mov ecx, edi
cmp dword [ebp - 0x24], eax
jne 0x430a14
mov ecx, eax
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10], eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], eax
jmp 0x430a3b
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x198], 0xfffffff8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x430a2a
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x430a5b
push eax
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetWindowRgn]
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x430a72
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
cmp byte [ebp - 0x45], 0
je 0x430bd2
cmp esi, edi
jne 0x430bd2
mov dword [ebp - 0x10], 0x47dfa860
lea ecx, [ebp - 0xec]
push 3
call fcn.00430131
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x430aae
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xec]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x430a9f
mov dword [ebp - 0x10], 0x1a
cmp dword [ebp - 0x10], 0xffffffe9
jg 0x430b65
mov dword [ebp - 0x20], 0x92443250
cmp dword [ebp - 0x20], esi
je 0x430add
mov dword [ebp - 0x28], 0xffffffff
dec dword [ebp - 0x28]
jmp 0x430b55
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], 0x13
jle 0x430b55
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], esi
jmp 0x430b43
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], 8
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xec]
mov edi, dword [eax + ecx*4]
sub edi, dword [eax + edx*4]
mov ecx, dword [ebp - 0x28]
neg edi
mov eax, dword [ebp - 0x24]
sbb edi, edi
sub ecx, 9
xor edx, edx
inc edi
cmp ecx, eax
mov eax, dword [ebp - 0xec]
setne dl
xor ecx, ecx
cmp edi, edx
setne cl
mov dword [eax + ebx*4], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x430afc
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x13
jg 0x430af0
xor edi, edi
inc edi
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe9
jle 0x430ac5
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0xec]
call fcn.00430203
mov dword [ebp - 0x10], 0xffffffff
xor eax, eax
mov dword [ebp - 0x1c], 0xe17ca002
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], 0x38bea122
mov dword [ebp - 0x1c], 0xfffffff9
mov dword [ebp - 0x28], 0x41b66baf
mov dword [ebx + 8], 4
mov dword [ebp - 0x10], eax
jmp 0x430bbf
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x430bbc
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff6
jg 0x430ba8
dec dword [ebp - 0x28]
mov esi, dword [ebp - 0x3c]
mov dword [ebx + 0xc], 0x4ad5ec
xor eax, eax
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x10], eax
jmp 0x430bed
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x190], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x430bdc
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], eax
jl 0x430c48
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x430c2f
push 0xae6
push eax
push 0x9ff
push 0x1ad7
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetCharacterPlacementW]
xor eax, eax
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp + ecx*4 - 0x190]
mov ecx, dword [ebp - 0x20]
mov dword [ebp + ecx*4 - 0x190], edx
dec dword [ebp - 0x20]
jns 0x430bff
cmp dword [ebp - 0x38], esi
jge 0x431b16
mov dword [ebp - 0x20], 0x33c6
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x24], 0x52eaa29c
mov dword [ebp - 0x18], 0x6efa42b4
push 3
call fcn.00430131
xor eax, eax
mov dword [ebp - 0x24], 0xd635
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], eax
jmp 0x430c97
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x120]
mov dword [ecx + edx*4], 0x2abbf9ac
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x430c84
push 2
mov dword [ebp - 0xc], eax
pop edx
jmp 0x430cb2
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0xa0], edi
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edx
jl 0x430ca5
mov dword [ebp - 0xc], eax
jmp 0x430ccd
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x170], 0xfffffff8
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edx
jl 0x430cbc
mov ecx, dword [ebp - 0x20]
xor ebx, ebx
mov ecx, dword [ebp - 0x14]
inc dword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x120]
push 0xfffffffffffffff7
pop edx
mov dword [ebp - 0x170], edx
mov dword [ecx + 4], edx
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
cmp edx, ecx
mov ecx, dword [ebp - 0x9c]
setne bl
xor edx, edx
cmp ebx, ecx
setg dl
sub edx, 0xa
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x24]
imul ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x430d5d
mov dword [ebp - 0x18], 0x15
jmp 0x430d52
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x430d4f
push 0x1f8d
push 0xd98
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
xor eax, eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x13
jne 0x430d33
jmp 0x430ddd
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x28], 0x3c77d98a
mov dword [ebp - 0x1c], 0xd6aeab66
cmp dword [ebp - 0x10], 0xaeda1e1c
je 0x430da5
mov ecx, dword [ebp - 0x28]
xor ebx, ebx
cmp ecx, 0x75f9
mov ecx, dword [ebp - 0x24]
setne bl
xor edx, edx
cmp ecx, ebx
mov ecx, dword [ebp - 0x10]
setge dl
add ecx, 0xffff4ef8
add ecx, edx
mov edx, eax
add ecx, dword [ebp - 0x18]
je 0x430da7
mov edx, edi
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
setl cl
xor edx, edx
sub ecx, dword [ebp - 0x10]
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x10], edi
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setle dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x120]
call fcn.00430203
mov dword [ebp - 0xc], edi
xor esi, esi
mov dword [ebp - 0x30], 0xfffffffe
mov ebx, 0x4ad5f0
mov dword [ebp - 0x10], 0x210ec320
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x10], esi
jmp 0x430e20
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x54], 0x2be197e7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x430e12
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
cmp eax, 0xab19
setne cl
add ecx, 0x108531d1
je 0x430e4d
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x30], 0xfbf2121f
xor ecx, ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
cmp eax, edi
mov eax, dword [ebp - 0xc]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setge dl
xor ecx, ecx
cmp eax, edx
setg cl
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x2c], edi
cmp dword [ebp - 0x2c], esi
jl 0x4310fe
push 3
pop ebx
push ebx
lea ecx, [ebp - 0x80]
call fcn.00430131
mov dword [ebp - 0x24], 0x8ed9e8bd
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x18], 0xf520f09d
mov dword [ebp - 0x1c], 0x565ea9d2
mov dword [ebp - 0x28], 0xfffb
push 4
call fcn.00430131
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x430ed2
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x80]
mov dword [ecx + edx*4], ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x430ec6
mov dword [ebp - 0xc], eax
jmp 0x430eef
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x12c]
mov dword [ecx + edx*4], 0xc36b4adb
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x430edc
mov dword [ebp - 0xc], eax
jmp 0x430f07
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x168], edi
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x430efa
mov dword [ebp - 0xc], edi
cmp dword [ebp - 0xc], eax
jl 0x4310dd
mov dword [ebp - 0x14], 0xffffffff
xor ebx, ebx
mov dword [ebp - 0x24], 7
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp + ecx*4 - 0x54]
dec dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp + ecx*4 - 0x54]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp + ecx*4 - 0x54]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp + ecx*4 - 0x54]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp + ecx*4 - 0x54]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp + ecx*4 - 0x54]
mov ecx, dword [ebp - 0x80]
cmp edx, dword [ecx]
mov ecx, dword [ebp - 0x2c]
setg bl
xor edx, edx
cmp ebx, ecx
setne dl
mov dword [ebp - 0x10], edx
xor edx, edx
mov dword [ebp - 0x24], edi
mov ecx, dword [ebp - 0x2c]
mov esi, dword [ebp + ecx*4 - 0x54]
mov ecx, dword [ebp - 0x24]
test ecx, ecx
mov ecx, 0xe63d4d86
sets dl
imul esi, edx
cmp ecx, esi
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x18], eax
jmp 0x4310c7
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + edx*4 + 4], eax
je 0x430fbb
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp + ecx*4 - 0x54]
mov edi, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x80]
imul esi, dword [edx + ecx*4], 0xfff6
imul ecx, dword [edx + edi*4 + 4], 0xdffd8
sub esi, ecx
jne 0x430ff3
cmp dword [ebp - 0x2c], eax
jne 0x430ff3
mov ecx, eax
jmp 0x430ff6
xor ecx, ecx
inc ecx
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x28]
dec dword [ebp - 0x28]
test ecx, ecx
jne 0x4310b6
mov ecx, dword [ebp - 0x54]
mov edx, 0xbc9af00a
mov dword [ebp - 0x24], 0x7edf
mov esi, dword [ebp - 0xc]
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp + ecx*4 - 0x54]
cmp edx, ecx
mov ecx, dword [ebp - 0x24]
sbb edx, edx
xor ebx, ebx
inc edx
cmp ecx, edx
mov ecx, dword [ebp - 0xc]
setge bl
sub ebx, dword [ebp + ecx*4 - 0x54]
sub ebx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x80]
neg ebx
sbb ebx, ebx
inc ebx
mov edx, dword [ecx + esi*4 + 4]
mov ecx, dword [ebp - 0x54]
add edx, 3
add edx, ebx
xor ebx, ebx
cmp edx, ecx
mov ecx, dword [ebp - 0x80]
sete bl
xor edx, edx
cmp ebx, dword [ecx]
setg dl
cmp edx, dword [ecx + edi*4]
jl 0x431072
cmp dword [ebp - 0x14], eax
jne 0x431072
xor edi, edi
mov esi, eax
inc edi
jmp 0x431077
xor edi, edi
inc edi
mov esi, edi
mov edx, dword [ebp - 0x30]
xor ebx, ebx
mov ecx, dword [ebp - 0x12c]
imul edx, esi
mov dword [ecx + 0xc], esi
mov ecx, dword [ebp - 0x20]
cmp edx, ecx
setl bl
mov dword [ebp - 0x168], ebx
test ebx, ebx
jne 0x4310a2
cmp dword [ebp - 0x164], eax
je 0x4310a5
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp + ecx*4 - 0x54]
mov ecx, dword [ebp - 0x14]
dec ecx
jne 0x4310b9
mov edx, eax
jmp 0x4310bb
xor edi, edi
inc edi
mov edx, edi
mov ecx, dword [ebp - 0xc]
add edx, edx
mov dword [ebp + ecx*4 - 0x54], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x430fac
dec dword [ebp - 0xc]
jns 0x430f18
push 3
pop ebx
lea ecx, [ebp - 0x12c]
call fcn.00430203
lea ecx, [ebp - 0x80]
call fcn.00430203
dec dword [ebp - 0x2c]
jns 0x430e8d
mov ebx, 0x4ad5f0
cmp dword [ebp - 0x38], 0
jle 0x431599
push 4
lea ecx, [ebp - 0x104]
call fcn.00430131
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], eax
jmp 0x431131
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x104]
mov dword [ecx + edx*4], edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x431122
mov esi, dword [ebp - 0x104]
mov dword [esi + 8], eax
mov dword [ebp - 0x14], 0x2d4ea680
mov dword [ebp - 0x14], eax
jmp 0x43115d
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x15c], 0xa8b108f8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x43114c
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], eax
jl 0x43117c
mov ecx, dword [ebp - 0x14]
cmp dword [ebp + ecx*4 - 0x15c], eax
jne 0x43117c
dec dword [ebp - 0x14]
jns 0x43116b
inc dword [esi + 8]
cmp dword [esi + 8], 9
jle 0x431140
mov eax, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x104]
cmp dword [eax + 0xc], 0xfffffff7
mov eax, dword [ebp - 0x28]
setge dl
xor ecx, ecx
cmp eax, edx
setl cl
sub ecx, dword [ebp - 0x28]
mov eax, dword [esi + 8]
imul eax, eax
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x104]
add eax, dword [ebp - 0x1c]
mov dword [esi + 8], eax
call fcn.00430203
mov eax, dword [ebx]
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 4]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x20], 0x3585ca25
mov dword [ebp - 0x1c], 0x366e5232
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], 0
jmp 0x4311f1
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x40], 0xfffffffe
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x4311e3
mov dword [ebp - 0x40], 0xa
jmp 0x43126e
mov dword [ebp - 0x30], 0xea5223fa
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x1c], 6
call fcn.00430131
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x431232
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x138]
mov dword [ecx + edx*4], 0x526c7153
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x43121f
cmp dword [ebp - 0x40], eax
jne 0x431256
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov esi, eax
cmp esi, ecx
mov ecx, eax
setne dl
add edx, dword [ebp - 0x18]
cmp edx, 0xb236728a
je 0x431258
mov ecx, edi
mov eax, dword [ebp - 0x18]
sub ecx, eax
mov dword [ebp - 0x20], ecx
lea ecx, [ebp - 0x138]
call fcn.00430203
dec dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xfffffff9
push 2
jge 0x4311ff
mov dword [ebp - 0x20], 0x15
pop esi
jmp 0x4312de
mov dword [ebp - 0x1c], 0xd4
mov dword [ebp - 0x1c], 0xdc4b636
mov dword [ebp - 0x14], 0
jmp 0x4312a8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1c8], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x431297
dec dword [ebp - 0x1c]
mov dword [ebp - 0x18], 0xfffffffb
jmp 0x4312d5
mov byte [ebp - 5], 0
cmp byte [ebp - 5], 0
je 0x4312d2
push 0
push 0x107a
push 0
call dword [sym.imp.KERNEL32.dll_WaitForSingleObjectEx]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x31
jle 0x4312b9
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jne 0x431280
mov dword [ebp - 0x20], edi
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x1c], 0x8451f1e2
add ebx, 8
mov dword [ebp - 0x1c], 0x6e6c8cac
mov dword [ebp - 0x1c], 0xa4d9a54e
mov dword [ebp - 0x1c], 6
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], 0xfffffff8
mov dword [ebp - 0x1c], 0xef23e469
mov dword [ebp - 0x1c], 0x514faf14
mov dword [ebp - 0x1c], 0x59f451db
push edi
mov dword [ebp - 0x34], ebx
call fcn.00430131
push dword [ebp + 8]
lea eax, [ebp - 0x170]
xor esi, esi
push eax
lea eax, [ebp - 0x180]
mov dword [ebp - 0xbc], esi
push eax
xorps xmm0, xmm0
mov dword [ebp - 0xb8], esi
push esi
lea ecx, [ebp - 0xbc]
mov dword [ebp - 0xb4], esi
movdqu xmmword [ebp - 0x180], xmm0
call fcn.00430274
mov esi, 0x97de2e51
xor eax, eax
mov dword [ebp - 0x114], esi
mov dword [ebp - 0x110], esi
mov dword [ebp - 0x10c], esi
mov dword [ebp - 0x108], esi
mov dword [ebp - 0xc], eax
jmp 0x4313a4
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x8c], eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x431397
mov dword [ebp - 0xc], eax
jmp 0x4313c2
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x154]
mov dword [ecx + edx*4], 0x39b8842b
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edi
jl 0x4313af
mov dword [ebp - 0xc], eax
jmp 0x4313dd
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x1b0], 0xf230b56b
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x4313cc
mov dword [ebp - 0x20], 0xfffffff0
cmp dword [ebp - 0x20], 0xe
jle 0x4314ba
mov dword [ebp - 0x14], eax
jmp 0x431407
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x44], 0x7dd68876
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x4313f9
mov dword [ebp - 0x44], 2
cmp dword [ebp - 0x44], eax
jl 0x4314aa
mov dword [ebp - 0x1c], 0x4a1cf041
xor ebx, ebx
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ebp + ecx*4 - 0x8c]
mov ecx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ebp + ecx*4 - 0x8c]
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp + ecx*4 - 0x8c]
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ebp + ecx*4 - 0x8c]
mov edx, dword [ebp - 0x20]
imul esi, ecx
mov ecx, dword [ebp - 0x88]
imul edx, esi
cmp edx, ecx
mov ecx, 0xb302aff6
setl bl
cmp ecx, ebx
mov ecx, dword [ebp - 0x44]
sbb esi, esi
xor edx, edx
neg esi
cmp esi, ecx
setg dl
mov dword [ebp - 0x1c], edx
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp + ecx*4 - 0x8c]
mov edx, dword [ebp - 0x1c]
sub edx, 0xfffffffc
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, esi
setl cl
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x44]
jns 0x43141c
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xe
jg 0x4313f4
mov ebx, dword [ebp - 0x34]
inc dword [ebp - 0x114]
lea ecx, [ebp - 0xbc]
call fcn.00430203
lea ecx, [ebp - 0x154]
call fcn.00430203
cmp dword [ebp - 0x28], 0
jne 0x4314e2
add ebx, 8
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x18], 0xffff
xor eax, eax
mov dword [ebp - 0x24], 0x188047d2
xor ebx, ebx
mov dword [ebp - 0x1c], 0x63588c55
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18]
cmp edx, ecx
mov ecx, dword [ebp - 0x18]
setg bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [ebp - 0x18]
setg dl
xor ebx, ebx
cmp ecx, edx
mov ecx, dword [ebp - 0x18]
setg bl
xor edx, edx
cmp ecx, ebx
mov ecx, dword [ebp - 0x18]
setg dl
mov dword [ebp - 0x1c], edx
xor edx, edx
cmp ecx, dword [ebp - 0x1c]
setl dl
sub edx, 0x4f4e7975
je 0x431551
cmp dword [ebp - 0x24], eax
je 0x431551
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0xaa08
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x431587
push eax
push eax
push 0x156d
push eax
push 0x170d
push eax
push 0x23ce
push 0x101d
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ebx, dword [ebp - 0x34]
add ebx, dword [ebp - 0x10]
dec dword [ebp - 0x38]
mov dword [ebp - 0x34], ebx
jne 0x431108
xor eax, eax
mov dword [ebp - 0x14], eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x4315b4
push eax
push 0x113a
call dword [sym.imp.KERNEL32.dll_GetCPInfo]
xor eax, eax
mov dword [ebp - 0x14], 0xffffffe4
jmp 0x4315e0
mov dword [ebp - 0x148], edi
mov dword [ebp - 0x144], edi
mov dword [ebp - 0x140], edi
mov dword [ebp - 0x13c], edi
cmp dword [ebp - 0x148], eax
jne 0x4315e6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff0
je 0x4315bd
mov esi, dword [ebx]
mov dword [ebp - 0x2c], 0xad386cce
mov dword [ebp - 0x30], 0x5166
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0xc], 0x887c5c6a
mov dword [ebp - 0x1c], 0x7293cc9
mov dword [ebp - 0x24], 0x8a1bd053
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], eax
jmp 0x431628
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x4c], 0x51328f6c
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x43161a
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x4c]
sub ecx, dword [ebp - 0x4c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, 0xafa0
mov ecx, dword [ebp - 0x30]
setge dl
dec dword [ebp - 0x30]
cmp ecx, edx
mov ecx, edi
cmovle ecx, eax
xor ebx, ebx
cmp ecx, 0x7b445ace
mov ecx, dword [ebp - 0x2c]
sete bl
xor edx, edx
cmp ecx, ebx
setne dl
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x11
jg 0x4317e7
mov dword [ebp - 0x18], 0x43e2
mov dword [ebp - 0x38], 0xb59229a2
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x28], 0x36fde002
cmp dword [ebp - 0x18], eax
jne 0x4317e4
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x30]
add ecx, 0xbeb9
jne 0x4316b8
mov ecx, eax
cmp dword [ebp - 0x20], eax
je 0x4316ba
mov ecx, edi
mov dword [ebp - 0xc], 0xf197
xor edx, edx
mov esi, dword [ebp - 0xc]
add esi, ecx
mov ecx, dword [ebp - 0x2c]
cmp esi, ecx
setle dl
mov dword [ebp - 0x1c], edx
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
je 0x4316e9
cmp dword [ebp - 0x18], eax
jne 0x4316f0
mov esi, eax
cmp dword [ebp - 0x2c], eax
je 0x4316f2
mov esi, edi
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x20]
cmp esi, ecx
setle dl
imul edx, dword [ebp - 0x38]
test edx, edx
je 0x4317a7
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x20], eax
jne 0x431792
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
sub ecx, 0xfffffff9
neg ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
cmp ecx, 0xfffffffb
mov ecx, dword [ebp - 0x4c]
setl bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [ebp - 0x4c]
setle dl
xor ebx, ebx
cmp edx, 0xffffffff
setl bl
xor edx, edx
cmp ecx, ebx
mov ecx, dword [ebp - 0x28]
setl dl
mov dword [ebp - 0x1c], edx
xor edx, edx
cmp dword [ebp - 0x1c], ecx
setg dl
sub edx, dword [ebp - 0x20]
jne 0x431792
cmp dword [ebp - 0x28], eax
jne 0x431792
mov dword [ebp - 0x18], eax
jmp 0x43178a
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x431787
push eax
push eax
push 0x21be
push eax
call dword [sym.imp.USER32.dll_AppendMenuA]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xc
jg 0x43176e
jmp 0x4317d7
mov dword [ebp - 0x1c], 0xabee
mov dword [ebp - 0xc], 0xb6c71789
cmp dword [ebp - 0x1c], eax
jne 0x4317e4
jmp 0x4317d7
mov dword [ebp - 0x38], 0x34bb1b2b
mov dword [ebp - 0x1c], 0xa8e8b88b
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1c], 0xe2b1956a
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x11
jle 0x43167e
mov esi, dword [ebp - 0x10]
add dword [ebp - 0x34], 4
push 0xfffffffffffffffc
pop ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x14], eax
jmp 0x43180a
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x5c], 0x26bdde0b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x4317fc
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], eax
jl 0x4318c3
mov dword [ebp - 0x38], 0x6a76
mov dword [ebp - 0x1c], 0x5b611fb8
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x14], eax
jmp 0x431844
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x70], 0xb8fa48a2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x431836
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x43185b
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
xor eax, eax
mov ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x18]
jne 0x43186a
mov ecx, eax
cmp dword [ebp - 0x18], eax
je 0x43186c
mov ecx, edi
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
sub edx, ecx
neg edx
sbb edx, edx
neg edx
mov dword [ebp - 0x30], edx
xor edx, edx
mov ecx, dword [ebp - 0x30]
cmp ecx, 0x93d0b548
mov dword [ebp - 0x70], ecx
setne dl
mov dword [ebp - 0x1c], edx
mov ecx, dword [ebp - 0x1c]
imul ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp + ecx*4 - 0x5c]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x70]
mov dword [ebp - 0x58], ecx
dec dword [ebp - 0x18]
jns 0x43181c
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x18]
neg edx
push 7
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, 0x866b3883
pop edx
setle cl
cmp eax, ecx
push 2
sbb eax, eax
xor ecx, ecx
inc eax
sub edx, eax
mov eax, dword [ebp - 0x5c]
cmp edx, eax
mov eax, dword [ebp - 0x30]
setl cl
xor edx, edx
cmp ecx, ebx
lea ecx, [ebp - 0xe0]
setge dl
sub edx, eax
mov eax, dword [ebp - 0x34]
add edx, 0x3837
mov dword [ebp - 0x5c], edx
mov ebx, dword [eax]
add eax, 4
mov dword [ebp - 0x20], 0x7f6af112
mov dword [ebp - 0x34], eax
call fcn.00430131
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x431943
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xe0]
or dword [ecx + edx*4], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x431933
mov dword [ebp - 0x20], eax
jmp 0x431a0d
mov dword [ebp - 0xc], 0xfffffff7
cmp dword [ebp - 0xc], eax
jne 0x431a17
mov dword [ebp - 0xc], eax
jmp 0x431a01
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], eax
jl 0x4319e4
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x38], edi
cmp dword [ebp - 0x38], eax
jl 0x4319c0
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x2c], eax
jmp 0x43199e
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx + edx*4], 0x226c312f
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 2
jl 0x43198b
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4319bb
push 0x21cb
push eax
call dword [sym.imp.KERNEL32.dll_WaitNamedPipeA]
xor eax, eax
dec dword [ebp - 0x38]
jns 0x431983
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4319df
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
xor eax, eax
dec dword [ebp - 0x18]
jns 0x431978
mov dword [ebp - 0x18], eax
jmp 0x4319f8
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xe0]
mov dword [ecx + edx*4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x4319e9
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edi
jle 0x431969
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff9
je 0x431951
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0x20], eax
call fcn.00430203
test ebx, ebx
jne 0x431b1a
cmp byte [ebp - 0x45], bl
je 0x431a43
cmp dword [ebp - 0x3c], edi
jne 0x431a43
mov ecx, dword [ebp + 8]
lea eax, [esi + 0x10]
add dword [ecx + 8], eax
mov ecx, dword [ebp - 0x34]
push esi
mov eax, dword [ecx]
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + 4]
add ecx, 8
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x34], ecx
call fcn.00485fde
mov ebx, dword [ebp - 0x10]
xor esi, esi
pop ecx
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x98]
lea eax, [ebp - 0xb0]
mov dword [ebp - 0xb0], esi
push eax
push ebx
mov dword [ebp - 0x98], esi
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x90], esi
call fcn.004684cb
xor ecx, ecx
test ebx, ebx
mov ebx, dword [ebp - 0x98]
jle 0x431ae4
mov eax, esi
and eax, 0x80000001
jns 0x431aab
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x1c]
add eax, esi
add eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x28]
jmp 0x431ac0
lea eax, [edx + 1]
cdq
idiv dword [ebp - 0x10]
cmp word [ebx + edx*2], cx
jne 0x431abd
mov eax, dword [ebp - 0x34]
mov word [ebx + edx*2], di
mov al, byte [edx + eax]
mov edx, dword [ebp - 0x3c]
mov byte [esi + edx], al
inc esi
mov eax, dword [ebp - 0x10]
cmp esi, eax
jl 0x431a9d
jmp 0x431ae7
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp + 8]
mov dword [edx], eax
mov eax, dword [ebp - 0x3c]
mov dword [edx + 4], eax
test ebx, ebx
je 0x431b1e
push ebx
call fcn.004874d6
pop ecx
xor ecx, ecx
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0x90], ecx
mov ebx, dword [ebp + 8]
jmp 0x431b20
xor ecx, ecx
jmp 0x431b20
xor ecx, ecx
jmp 0x431b11
mov ebx, edx
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x14], 3
jmp 0x431b56
mov byte [ebp + 0xb], cl
cmp byte [ebp + 0xb], 0
je 0x431b42
push ecx
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
xor ecx, ecx
mov byte [ebp + 0xb], cl
cmp byte [ebp + 0xb], 0
je 0x431b53
call dword [sym.imp.KERNEL32.dll_GetACP]
xor ecx, ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x19
jle 0x431b30
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret