Function at 0x4347d3
Capabilities:
Accept command line arguments
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1a0
mov dword [ebp - 0x10], 0xfffffffe
xor eax, eax
push ebx
mov dword [ebp - 0x18], 0xcb03629a
mov byte [ebp - 5], al
push esi
push edi
mov byte [ebp - 0x3d], dl
mov dword [ebp - 0x30], ecx
cmp byte [ebp - 5], al
je 0x434808
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
xor eax, eax
push 1
mov dword [ebp - 0x10], 2
pop edi
jmp 0x43482a
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x1c], edi
inc dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff6
jl 0x434814
mov dword [ebp - 0xc], 0xcb50bf34
mov dword [ebp - 0x3c], 0xd4a1cf04
mov dword [ebp - 0x3c], 0x6d0c11e0
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 0x10], eax
jmp 0x43485f
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x48], 0x8eac8b13
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x434851
mov dword [ebp - 0xc], eax
jmp 0x4348cb
mov dword [ebp - 0x18], 5
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x434892
push eax
push 0x1711
push eax
push 0xd4
push 0x4f1
call dword [sym.imp.GDI32.dll_ExtCreatePen]
xor eax, eax
cmp dword [ebp - 0xc], eax
jne 0x43489d
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x48]
xor ebx, ebx
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp + ecx*4 - 0x48]
imul edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x48]
cmp edx, ecx
mov ecx, dword [ebp - 0xc]
setg bl
mov ecx, dword [ebp + ecx*4 - 0x48]
add ecx, ebx
imul edx, ecx, 0xfffffffc
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x48], edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x434869
jne 0x4348e7
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x3c], edi
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
push dword [ebp + 8]
lea ecx, [ebp - 0x144]
mov dword [ebp - 0x18], edi
push ecx
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x3c], 5
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x28], 0xde57413
lea ecx, [ebp - 0xc0]
push eax
movdqu xmmword [ebp - 0x154], xmm0
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
call fcn.004345a3
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x10], esi
jmp 0x434949
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x58], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x43493f
mov eax, dword [ebp - 0x54]
xor edx, edx
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x3c], 0x5f07
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
mov eax, dword [ebp - 0x58]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x54]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x54]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x58]
sete cl
sub eax, ecx
je 0x434995
cmp dword [ebp - 0x54], esi
je 0x434995
mov esi, edi
mov dword [ebp - 0x18], esi
lea ecx, [ebp - 0xc0]
dec dword [ebp - 0x1c]
call fcn.00434532
xor eax, eax
mov dword [ebp - 0x10], 0xfffffff6
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x4349c0
push eax
call dword [sym.imp.GDI32.dll_CreatePatternBrush]
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x4349e4
mov dword [ebp - 0x18], 0x44455595
mov dword [ebp - 0x18], eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4349e1
push eax
call dword [sym.imp.GDI32.dll_CreateRectRgnIndirect]
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 5
jl 0x4349c5
mov ebx, dword [0x4b55ec]
lea ecx, [ebp - 0xa4]
push edi
mov dword [ebp - 0x3c], ebx
call fcn.00434460
mov dword [ebp - 0x20], 0x2c70bb74
xor eax, eax
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], 0x3c1de6fc
mov dword [ebp - 0x10], eax
jmp 0x434a26
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xa4]
mov dword [ecx + edx*4], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x434a17
mov dword [ebp - 0x20], eax
jmp 0x434a41
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0xa4]
cmp dword [edx + ecx*4], eax
jne 0x434a4c
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
jle 0x434a30
mov edx, dword [ebp - 0xa4]
xor ecx, ecx
cmp dword [edx], eax
setne cl
cmp dword [edx], eax
jne 0x434a63
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], 0xd017
jl 0x434a65
mov eax, edi
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x20]
add ecx, eax
mov eax, dword [ebp - 0xa4]
sub ecx, dword [eax]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0xa4]
call fcn.00434532
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x70]
xor esi, esi
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0xc], 0xffffffff
mov dword [ebp - 0x1c], 0xffffffff
mov dword [edi], esi
mov dword [edi + 4], esi
mov dword [edi + 8], esi
mov dword [edi + 0xc], esi
inc esi
mov dword [ebp - 0x14], 0xa017779a
mov dword [ebp - 0x10], 0xacee6178
push esi
call fcn.00434460
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x434ad9
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x70]
or dword [ecx + edx*4], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x434acc
mov edx, dword [ebp - 0x20]
neg edx
sbb edx, edx
neg edx
cmp dword [ebp - 0x20], eax
je 0x434afe
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, 0x3695
setne cl
dec ecx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], eax
jg 0x434c08
xor ebx, ebx
mov dword [ebp - 0x1c], 0x22c7e12f
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
cmp edx, ecx
mov ecx, dword [ebp - 0x14]
setl bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [ebp - 0xc]
setne dl
mov dword [ebp - 0x18], edx
xor edx, edx
cmp dword [ebp - 0x18], ecx
setge dl
xor ebx, ebx
mov dword [ebp - 0x1c], edx
mov edi, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x70]
cmp dword [esi + ecx*4], 0x9ca
mov ecx, dword [ebp - 0x1c]
setge bl
xor edx, edx
cmp dword [esi + edi*4], ecx
mov ecx, dword [ebp - 0x70]
setge dl
imul edx, dword [ecx]
xor ecx, ecx
cmp ebx, edx
mov edx, dword [ebp - 0xc]
mov edi, dword [ebp - 0xc]
setle cl
xor ebx, ebx
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x70]
mov esi, dword [ebp - 0x18]
cmp esi, dword [ecx + edx*4]
mov ecx, dword [ebp - 0xc]
setge bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [ebp - 0x70]
setge dl
cmp edx, dword [ecx + edi*4]
je 0x434bb6
cmp dword [ecx], eax
je 0x434bb6
xor edx, edx
inc edx
jmp 0x434bb8
mov edx, eax
mov dword [ebp - 0x10], edx
mov esi, 0xc413899
sub esi, dword [ecx]
mov ecx, dword [ebp - 0x20]
sub esi, ecx
add esi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
add esi, ecx
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x70]
mov dword [ecx + edx*4], esi
mov dword [ebp - 0x14], esi
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x434bf3
push 0x1fcd
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
xor eax, eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x434b28
mov edi, dword [ebp + 8]
xor esi, esi
mov ebx, dword [ebp - 0x3c]
inc esi
lea ecx, [ebp - 0x70]
call fcn.00434532
cmp byte [ebp - 0x3d], 0
je 0x434ec8
cmp ebx, esi
jne 0x434ec8
mov dword [ebp - 0x20], 0xffffffff
lea ecx, [ebp - 0x140]
push 2
call fcn.00434460
xor eax, eax
mov dword [ebp - 0x1c], 0xe734e2e0
mov dword [ebp - 0xc], eax
jmp 0x434c52
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x50], 0xc2e0cf57
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x434c44
mov dword [ebp - 0xc], eax
jmp 0x434c6f
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x140]
mov dword [ecx + edx*4], 0xad8e65dd
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x434c5c
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jl 0x434ce9
mov dword [ebp - 0x10], 0xd9a2b82c
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], 0xfffe
mov ecx, dword [ebp - 0x20]
cmp dword [ebp - 0x10], eax
jne 0x434cbc
mov edx, dword [ebp - 0x14]
xor ebx, ebx
mov ecx, dword [ebp - 0x50]
cmp ecx, edx
setle bl
mov dword [ebp - 0x14], ebx
mov ecx, dword [ebp - 0x14]
neg ecx
sbb ecx, ecx
neg ecx
cmp dword [ebp - 0x20], ecx
jge 0x434cb9
cmp dword [ebp - 0x50], eax
je 0x434cbc
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
xor edx, edx
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x50]
cmp ecx, esi
setl dl
mov dword [ebp - 0x18], edx
dec dword [ebp - 0x20]
jns 0x434c7d
inc dword [ebp - 0x1c]
lea ecx, [ebp - 0x140]
call fcn.00434532
mov dword [ebp - 0xc], 0x708ef6b8
xor eax, eax
mov dword [ebp - 0x20], 2
mov dword [ebp - 0x1c], 6
mov dword [ebp - 0x14], 9
mov dword [ebp - 0x38], 0xffff
mov dword [edi + 8], 4
mov dword [ebp - 0x10], eax
jmp 0x434d36
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x44], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x434d28
mov ecx, dword [ebp - 0xc]
xor ebx, ebx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x20]
add edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
cmp edx, ecx
mov ecx, dword [ebp - 0xc]
setne bl
xor edx, edx
cmp ebx, ecx
setl dl
mov dword [ebp - 0x44], edx
mov ecx, dword [ebp - 0xc]
neg ecx
je 0x434d6d
cmp dword [ebp - 0x20], eax
jne 0x434d6f
mov esi, eax
mov ecx, dword [ebp - 0xc]
xor edx, edx
cmp esi, ecx
sete dl
sub edx, dword [ebp - 0xc]
neg edx
sbb edx, edx
inc edx
imul edx, dword [ebp - 0xc]
test edx, edx
je 0x434d95
cmp dword [ebp - 0x44], eax
je 0x434d95
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x434d9a
xor ebx, ebx
inc ebx
mov esi, ebx
mov ecx, dword [ebp - 0xc]
xor edx, edx
cmp esi, ecx
setne dl
xor ecx, ecx
cmp edx, 0xca4f
setne cl
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x14]
dec dword [ebp - 0x14]
neg ecx
jne 0x434dd8
mov ecx, dword [ebp - 0x44]
xor edx, edx
cmp ecx, 0xfffffff8
setne dl
xor ecx, ecx
cmp edx, 0xffffffff
setl cl
cmp dword [ebp - 0x44], ecx
jne 0x434dd8
mov ecx, eax
jmp 0x434ddd
mov ecx, dword [ebp - 0x44]
mov ecx, ebx
cmp ecx, dword [ebp - 0x1c]
jne 0x434e3b
mov dword [ebp - 0x34], 0x6b786ae2
xor edx, edx
mov dword [ebp - 0x1c], 0xb2d4ad44
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 0x18], 0x5eac84c9
mov ecx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x44], esi
mov ecx, dword [ebp - 0x20]
cmp esi, ecx
setge dl
imul ecx, edx, 0x97de
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x18], 2
jmp 0x434ebf
mov dword [ebp - 0x1c], 0x2130bec3
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x20], 0xd
jmp 0x434eb9
mov dword [ebp - 0x34], 3
mov dword [ebp - 0x1c], 0xc164d14
mov dword [ebp - 0x18], 0xd2a5dbdf
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x34]
imul edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x34]
dec ecx
add ecx, edx
xor edx, edx
cmp ecx, 0xa897
setle dl
xor ebx, ebx
mov dword [ebp - 0x1c], edx
mov ecx, dword [ebp - 0x1c]
cmp ecx, 0xfffffff8
mov ecx, dword [ebp - 0xc]
setg bl
xor edx, edx
cmp ebx, ecx
setle dl
xor ebx, ebx
mov dword [ebp - 0x1c], edx
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
cmp edx, ecx
setg bl
mov dword [ebp - 0x18], ebx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffe4
jne 0x434e52
mov dword [edi + 0xc], 0x4b55ec
jmp 0x434eca
xor eax, eax
xor ebx, ebx
inc ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x1c], 6
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
dec ecx
neg ecx
sbb ecx, ecx
inc ecx
add ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 0xc]
test ecx, ecx
jne 0x434f0e
mov ecx, eax
cmp dword [ebp - 0xc], eax
je 0x434f10
mov ecx, ebx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0xc], 0xfffffff5
jmp 0x434f49
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x434f46
push eax
push 0x3f5
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
xor eax, eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x34
jge 0x434f2e
mov esi, dword [ebp - 0x30]
cmp esi, dword [ebp - 0x3c]
jge 0x435ead
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x28], 5
mov dword [ebp - 0x28], 0xa00f47a6
mov dword [ebp - 0x28], 0x51328f6c
mov dword [ebp - 0x28], 0x72276b87
mov dword [ebp - 0x28], 0x66941fc9
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x28], 0x4a6f4440
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x28], 0x3061ece3
mov dword [ebp - 0x28], 0xddd9cd44
mov dword [ebp - 0x28], 0xcd7d393e
mov dword [ebp - 0x28], 0xfffffff8
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xc], eax
jmp 0x434fc3
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x144], ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x434fb6
mov dword [ebp - 0xc], eax
jmp 0x434fde
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1a0], 0x779a7b44
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x434fcd
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, 0x714a0256
mov edi, 0x4b55f0
push 2
setge cl
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0xe4]
inc dword [ebp - 0x38]
call fcn.00434460
mov dword [ebp - 0x2c], 0xdd1d8f8f
mov dword [ebp - 0x34], 7
mov dword [ebp - 0x20], 0xfffe
mov dword [ebp - 0x38], 0x7d02268f
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x14], ebx
push 0xfffffffffffffff8
pop eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], eax
xor eax, eax
mov dword [ebp - 0xc], 8
mov dword [ebp - 0xc], eax
jmp 0x43505c
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xe4]
mov dword [ecx + edx*4], 0xfffffff7
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x435049
mov dword [ebp - 0xc], eax
jmp 0x435075
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x4c], 0xeaf6
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x435067
mov ecx, dword [ebp - 0xe4]
mov dword [ecx + 4], eax
mov dword [ebp - 0x2c], eax
cmp dword [ecx + 4], eax
jne 0x4350d1
mov ecx, dword [ebp - 0x2c]
xor ebx, ebx
mov edx, 0xc7ab
sub edx, ecx
add edx, dword [ebp - 0x2c]
cmp edx, 0x7b7e80d6
setl bl
xor ecx, ecx
cmp ebx, 0xba5f27a4
setne cl
xor ebx, ebx
mov dword [ebp - 0x34], ecx
xor edx, edx
mov ecx, dword [ebp - 0x38]
inc ebx
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0xe4]
cmp dword [ecx], ebx
mov ecx, eax
sete dl
cmp edx, dword [ebp - 0x1c]
jl 0x4350d3
mov ecx, ebx
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], eax
jne 0x4350e3
cmp dword [ebp - 0x34], eax
jne 0x4350e3
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x14], 0xfffb
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x4c]
cmp ecx, ebx
mov ecx, dword [ebp - 0x20]
setl dl
xor ebx, ebx
cmp edx, ecx
setle bl
xor edx, edx
imul ebx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x1c]
cmp ebx, ecx
setl dl
cmp edx, 0xd5f5
jg 0x4351fc
mov dword [ebp - 0x24], eax
jmp 0x43519d
mov dword [ebp - 0x1c], 0x65e5
cmp dword [ebp - 0x18], eax
jne 0x4351a3
mov dword [ebp - 0x2c], eax
jmp 0x435194
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xfffffff0
jne 0x435191
xor edx, edx
inc edx
mov dword [ebp - 0x20], eax
jmp 0x435183
mov dword [ebp - 0x38], 3
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x1c], eax
jne 0x435188
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jg 0x43516e
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xfffffff0
je 0x435169
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffe3
jge 0x43515d
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jge 0x43514c
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0xe4]
call fcn.00434532
test esi, esi
jle 0x4357c1
xor eax, eax
mov ecx, dword [edi]
mov dword [ebp - 0x10], 0xfffffff9
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x18], 0x5761be36
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
mov dword [ebp - 0x28], ecx
je 0x4351f4
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_EndDoc]
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x4352e1
xor ebx, ebx
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x14], eax
inc ebx
jmp 0x435218
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xa8], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x43520b
cmp dword [ebp - 0x1c], ebx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 0xf696
setge al
xor edx, edx
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x4c]
cmp eax, ecx
setne dl
mov dword [ebp - 0x34], edx
jmp 0x4351a6
mov dword [ebp - 0x38], 0xd21f1eb3
mov dword [ebp - 0x1c], 0xfffffffb
mov dword [ebp - 0x18], 0xb5411457
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x43527b
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x4352b8
mov ecx, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, 0x890c5440
setne dl
xor ecx, ecx
cmp edx, 0xee76373a
setne cl
xor ebx, ebx
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x38]
cmp edx, ecx
setle bl
cmp dword [ebp - 0x1c], ebx
jge 0x4352b5
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x4352ba
xor ebx, ebx
inc ebx
mov esi, ebx
mov ecx, dword [ebp - 0x1c]
xor edx, edx
cmp esi, ecx
mov esi, 0x801fc3ee
setg dl
mov dword [ebp - 0x18], edx
xor edx, edx
mov ecx, dword [ebp - 0x18]
sub esi, ecx
mov ecx, dword [ebp - 0x10]
cmp ecx, esi
setle dl
mov dword [ebp - 0x18], edx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffee
je 0x43524d
add edi, 4
lea ecx, [ebp - 0x88]
push 3
mov dword [ebp - 0x10], edi
call fcn.00434460
mov dword [ebp - 0xc], ebx
xor esi, esi
mov dword [ebp - 0x34], 0x367f5ed9
mov dword [ebp - 0x38], 0xa20b
mov dword [ebp - 0x14], esi
jmp 0x435329
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x88]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x435316
mov dword [ebp - 0xc], esi
cmp dword [ebp - 0xc], 2
jg 0x435403
mov dword [ebp - 0x18], 0xfffffff8
mov dword [ebp - 0x1c], 0xc3a60813
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x14], esi
jmp 0x435367
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x114], 5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x435356
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0xc]
mov edi, dword [ebp - 0xc]
mov ebx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x88]
imul ecx, dword [eax + edx*4]
xor edx, edx
mov eax, dword [ebp - 0x88]
add ecx, 0xffff
cmp dword [eax + edi*4], ecx
mov eax, dword [ebp - 0x1c]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x38]
setl cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x88]
setne dl
xor ecx, ecx
cmp edx, dword [eax + ebx*4]
setle cl
mov dword [ebp - 0x114], ecx
mov edi, dword [ebp - 0xc]
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x88]
add eax, ecx
xor ecx, ecx
cmp dword [edx + edi*4], eax
setne cl
mov dword [ebp - 0x18], ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jle 0x43533c
mov edi, dword [ebp - 0x10]
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x88]
call fcn.00434532
mov esi, dword [edi]
xor eax, eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x18], 0x41145714
mov dword [ebp - 0x18], 0x4af7bdd4
mov dword [ebp - 0x18], 0x74fd5228
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xa
jge 0x435598
mov dword [ebp - 0x1c], 0x56a9
mov dword [ebp - 0x24], 0x81d21f1e
mov dword [ebp - 0x18], 0x54dbbe56
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 0x63ec58f5
mov dword [ebp - 0x38], 0x39cee24b
mov dword [ebp - 0x10], eax
jmp 0x43547a
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x164], 0xdb8846b5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x435469
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x18]
cmp ecx, ebx
mov ecx, dword [ebp - 0x2c]
setl dl
xor ebx, ebx
cmp edx, 0x6373
setle bl
xor edx, edx
cmp ebx, ecx
setle dl
xor ebx, ebx
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
cmp edx, ecx
mov ecx, dword [ebp - 0x24]
setle bl
xor edx, edx
cmp ecx, ebx
setne dl
sub edx, 0xffff
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x801fc3ee
setne cl
cmp dword [ebp - 0x1c], ecx
jg 0x435556
mov dword [ebp - 0x1c], 8
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4354f9
push eax
push 0x15c8
push eax
call dword [sym.imp.GDI32.dll_GetMetaFileBitsEx]
xor eax, eax
mov dword [ebp - 0x24], 9
jmp 0x43554e
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], eax
jmp 0x43551b
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x174], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x43550a
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435532
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
xor eax, eax
dec dword [ebp - 0x1c]
xor ebx, ebx
mov edx, dword [ebp - 0x170]
mov ecx, dword [ebp - 0x1c]
cmp ecx, edx
setg bl
mov dword [ebp - 0x160], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x15
je 0x435502
jmp 0x435575
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435575
push eax
push eax
push 0x20d2
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435588
push eax
push eax
call dword [sym.imp.GDI32.dll_CopyEnhMetaFileA]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xa
push 1
pop ebx
jl 0x435437
push 2
lea ecx, [ebp - 0x94]
add edi, 4
call fcn.00434460
xor eax, eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
jmp 0x4355c5
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x94]
mov dword [ecx + edx*4], 0xb0f73838
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x4355b2
mov dword [ebp - 0xc], eax
jmp 0x4355e1
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x134], 0xfecf7921
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x4355d0
mov ecx, dword [ebp - 0x94]
mov dword [ecx], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], eax
jne 0x435638
mov ecx, dword [ebp - 0x94]
xor edx, edx
mov dword [ebp - 0x10], 0x62a2
mov ecx, dword [ecx]
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
cmp ecx, 0xffffffff
setne dl
xor ebx, ebx
cmp edx, 0x50f8
mov edx, dword [ebp - 0x94]
setne bl
xor ecx, ecx
cmp ebx, dword [edx]
setle cl
xor ebx, ebx
inc ebx
cmp ecx, 9
jg 0x43563e
mov ecx, eax
jmp 0x435640
mov edx, dword [ebp - 0x94]
mov ecx, ebx
xor eax, eax
cmp ecx, dword [edx + 4]
lea ecx, [ebp - 0x94]
setne al
mov dword [ebp - 0x130], eax
call fcn.00434532
test esi, esi
jne 0x435660
add edi, 8
mov dword [ebp - 0x14], 5
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x14], 0xd
cmp dword [ebp - 0x14], 0x19
je 0x4357b2
mov dword [ebp - 0xc], 0xfffffffe
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x124], ebx
mov dword [ebp - 0x120], ebx
mov dword [ebp - 0x11c], ebx
mov dword [ebp - 0x118], ebx
xor ebx, ebx
mov ecx, dword [ebp - 0x20]
add ecx, 0xffff
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x2c]
cmp edx, ecx
setg bl
add ebx, dword [ebp - 0x14]
jne 0x4356ca
cmp dword [ebp - 0x24], eax
jne 0x4356ca
mov esi, eax
inc ebx
jmp 0x4356cf
xor ebx, ebx
inc ebx
mov esi, ebx
mov ecx, dword [ebp - 0xc]
xor edx, edx
cmp esi, ecx
setg dl
xor ecx, ecx
cmp edx, 0x3271
setne cl
sub ecx, 0xfffffffb
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, ecx, 0xa218
add ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x2c]
imul ecx, ecx, 0xa2c7
test ecx, ecx
je 0x435749
cmp dword [ebp - 0x14], eax
je 0x435749
push 2
lea ecx, [ebp - 0xf0]
call fcn.00434460
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x43572e
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 0xa30b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x43571b
mov eax, dword [ebp - 0xf0]
lea ecx, [ebp - 0xf0]
inc dword [eax]
call fcn.00434532
jmp 0x4357a2
push 3
mov dword [ebp - 0x24], eax
pop esi
jmp 0x43579a
mov dword [ebp - 0x20], 0x31d80
mov dword [ebp - 0xc], esi
cmp dword [ebp - 0xc], eax
jl 0x435797
mov dword [ebp - 0x20], eax
jmp 0x43578d
mov dword [ebp - 0x2c], eax
jmp 0x435785
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435782
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_HideCaret]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x43576a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x435765
dec dword [ebp - 0xc]
jns 0x435760
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x435751
mov eax, dword [ebp - 0xc]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x19
push 0
pop eax
jne 0x435680
add edi, dword [ebp - 0x28]
dec dword [ebp - 0x30]
mov dword [ebp - 0x10], edi
jne 0x4351bb
xor esi, esi
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x14], 0x444696a4
push 4
call fcn.00434460
mov dword [ebp - 0x20], 7
xor eax, eax
mov dword [ebp - 0x18], 0xfff8
mov dword [ebp - 0x1c], 0xbe49
mov dword [ebp - 0x30], 0xc29b
mov dword [ebp - 0x24], eax
jmp 0x435810
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0xd8]
mov dword [ecx + edx*4], 0x278ee3f
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x4357fd
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], eax
je 0x43592b
mov ecx, dword [ebp - 0x14]
push 2
lea ecx, [ebp - 0xcc]
call fcn.00434460
mov dword [ebp - 0x30], 0xaf7806aa
xor esi, esi
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x14], esi
jmp 0x435856
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xcc]
mov dword [eax + ecx*4], 0xe1c2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x435843
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], 0x12
jne 0x4358da
mov edi, dword [ebp - 0xd8]
mov dword [ebp - 0x34], 0xdc16
xor edx, edx
mov dword [ebp - 0x18], 0x3bd3e018
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
cmp eax, ecx
setle dl
xor ecx, ecx
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0xcc]
cmp dword [eax], 2
setne cl
mov dword [edi + 8], ecx
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
sub eax, 2
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0xcc]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x12
je 0x43586b
mov edi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x30], esi
je 0x435908
imul eax, dword [ebp - 0x14], 0x2f2a
xor ecx, ecx
cmp eax, 0x87d3
setg cl
imul ecx, dword [ebp - 0x1c]
cmp ecx, 3
sbb eax, eax
neg eax
imul eax, dword [ebp - 0x20]
test eax, eax
mov eax, ebx
jne 0x43590a
mov eax, esi
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xd8]
sub ecx, dword [eax]
mov dword [eax + 8], ecx
lea ecx, [ebp - 0xcc]
call fcn.00434532
jmp 0x43593d
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x43593b
push eax
push eax
call dword [sym.imp.USER32.dll_UnregisterClassA]
xor esi, esi
lea ecx, [ebp - 0xd8]
call fcn.00434532
mov eax, dword [edi]
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0xc], esi
push ebx
mov dword [ebp - 0x1c], eax
call fcn.00434460
mov dword [ebp - 0x30], 0x3c47aa29
xor eax, eax
mov dword [ebp - 0x18], 0x4b380b77
mov dword [ebp - 0x14], 0x553f327e
mov dword [ebp - 0x2c], 0xfffffffd
push 3
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0xc], eax
pop edx
jmp 0x435993
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x64], edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edx
jl 0x435989
mov dword [ebp - 0xc], eax
jmp 0x4359b0
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + edx*4], 0xf065f4b3
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x43599d
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x4359cc
push 0x199
push eax
push eax
call dword [sym.imp.GDI32.dll_TranslateCharsetInfo]
xor eax, eax
push 2
pop esi
mov dword [ebp - 0xc], esi
cmp dword [ebp - 0xc], eax
jl 0x435bfb
mov dword [ebp - 0x34], 0xbd0176df
mov dword [ebp - 0x24], 0xa0455d89
mov dword [ebp - 0x28], 0xf891d985
mov ecx, dword [ebp - 0xc]
cmp dword [ebp + ecx*4 - 0x64], eax
jne 0x435a00
mov edi, eax
cmp dword [ebp - 0x60], eax
je 0x435a02
mov edi, ebx
mov ecx, dword [ebp - 0xc]
xor edx, edx
cmp edi, 0x424
sete dl
mov esi, dword [ebp + ecx*4 - 0x64]
xor ecx, ecx
cmp edx, esi
setle cl
imul edx, ecx, 7
mov ecx, dword [ebp - 0xb4]
mov dword [ecx], edx
xor ecx, ecx
cmp edx, 0x5e0b2f67
setl cl
xor ebx, ebx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0xc]
cmp dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x34]
setle bl
xor edx, edx
cmp ecx, ebx
setg dl
xor ecx, ecx
cmp edx, 0xc90e
mov edx, dword [ebp - 0xc]
setle cl
sub ecx, 0xfff7
dec edx
neg edx
sbb edx, edx
neg edx
sub edx, ecx
neg edx
sbb edx, edx
inc edx
dec edx
je 0x435a80
cmp dword [ebp - 0x34], eax
je 0x435a80
xor esi, esi
inc esi
mov ecx, esi
jmp 0x435a85
xor esi, esi
mov ecx, eax
inc esi
mov dword [ebp - 0x30], ecx
xor ebx, ebx
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x30]
cmp ecx, edx
mov ecx, dword [ebp - 0xc]
setle bl
xor edx, edx
mov ecx, dword [ebp + ecx*4 - 0x64]
cmp ecx, ebx
mov ecx, dword [ebp - 0xc]
setge dl
xor ebx, ebx
mov ecx, dword [ebp + ecx*4 - 0x64]
cmp edx, ecx
mov ecx, dword [ebp - 0xc]
setne bl
xor edx, edx
cmp ebx, ecx
mov ecx, 0xa0e1c2a9
setne dl
cmp ecx, edx
mov ecx, dword [ebp - 0xc]
sbb edx, edx
neg edx
add edx, dword [ebp + ecx*4 - 0x64]
cmp edx, dword [ebp - 0xc]
jle 0x435b4f
mov ecx, dword [ebp - 0xb4]
mov dword [ebp - 0x14], 0xfa7ad11e
mov dword [ebp - 0x28], 0xb8b2
mov dword [ebp - 0x38], 0x52f109d4
push 5
mov dword [ebp - 0x18], 0x548f9f0a
pop edx
mov dword [ebp - 0x18], 0x3f201f9d
mov dword [ecx], edx
cmp dword [ebp - 0x64], edx
jle 0x435b08
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x28]
xor ebx, ebx
mov ecx, dword [ebp - 0x38]
inc ebx
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp + ecx*4 - 0x64]
mov ecx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp + ecx*4 - 0x64]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], eax
je 0x435b3c
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x34]
xor edx, edx
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xfffffff6
setl dl
mov dword [ebp - 0x18], edx
jmp 0x435baa
mov dword [ebp - 0x28], 0x5eef
xor edx, edx
mov dword [ebp - 0x10c], esi
mov dword [ebp - 0x108], esi
mov dword [ebp - 0x104], esi
mov dword [ebp - 0x100], esi
mov dword [ebp - 0x30], 0xd17753ca
dec dword [ebp - 0x30]
mov dword [ebp - 0x18], 0xd8c4
mov ecx, dword [ebp - 0x30]
cmp ecx, esi
mov ecx, dword [ebp - 0x18]
setg dl
xor ebx, ebx
cmp edx, ecx
mov ecx, dword [ebp - 0xb4]
setne bl
imul ebx, dword [ecx]
mov ecx, dword [ebp - 0x2c]
add ecx, ebx
xor ebx, ebx
mov dword [ebp - 0x108], ecx
inc ebx
push 2
mov dword [ebp - 0x14], eax
pop esi
jmp 0x435bea
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435bd5
push 0x1e33
push 0x2431
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_CreateCaret]
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435be7
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x435bb2
dec dword [ebp - 0xc]
jns 0x4359db
mov edi, dword [ebp - 0x10]
lea ecx, [ebp - 0xb4]
call fcn.00434532
push 4
pop edx
add edi, edx
mov dword [ebp - 0x18], 0xffffffff
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x435c26
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x12c], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x435c19
mov edx, ebx
cmp dword [ebp - 0x18], eax
jne 0x435c34
mov edx, eax
xor ecx, ecx
cmp edx, 0xfffffffb
setne cl
mov dword [ebp - 0x12c], ecx
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x435c54
push eax
push eax
call dword [sym.imp.KERNEL32.dll_SetCommState]
xor eax, eax
mov esi, dword [edi]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x18], 0x41145714
mov dword [ebp - 0x28], 0x4af7bdd4
mov dword [ebp - 0x28], 0x74fd5228
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xa
jge 0x435ddc
mov dword [ebp - 0x30], 0x56a9
mov dword [ebp - 0x14], 0x81d21f1e
mov dword [ebp - 0x28], 0x54dbbe56
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x18], 0x63ec58f5
mov dword [ebp - 0x18], 0x39cee24b
mov dword [ebp - 0x10], eax
jmp 0x435cbe
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x184], 0xdb8846b5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x435cad
mov ecx, dword [ebp - 0x30]
xor edx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x28]
cmp ecx, ebx
mov ecx, dword [ebp - 0x24]
setl dl
xor ebx, ebx
cmp edx, 0x6373
setle bl
xor edx, edx
cmp ebx, ecx
setle dl
xor ebx, ebx
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
cmp edx, ecx
mov ecx, dword [ebp - 0x14]
setle bl
xor edx, edx
cmp ecx, ebx
setne dl
sub edx, 0xffff
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x801fc3ee
setne cl
cmp dword [ebp - 0x30], ecx
jg 0x435d9a
mov dword [ebp - 0x30], 8
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435d3d
push eax
push 0x15c8
push eax
call dword [sym.imp.GDI32.dll_GetMetaFileBitsEx]
xor eax, eax
mov dword [ebp - 0x14], 9
jmp 0x435d92
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], eax
jmp 0x435d5f
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x194], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x435d4e
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435d76
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
xor eax, eax
dec dword [ebp - 0x30]
xor ebx, ebx
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x190]
cmp edx, ecx
setg bl
mov dword [ebp - 0x180], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x15
je 0x435d46
jmp 0x435db9
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435db9
push eax
push eax
push 0x20d2
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x435dcc
push eax
push eax
call dword [sym.imp.GDI32.dll_CopyEnhMetaFileA]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xa
push 1
pop ebx
jl 0x435c7b
test esi, esi
jne 0x435ead
cmp byte [ebp - 0x3d], 0
je 0x435dfd
cmp dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x1c]
jne 0x435e00
mov ecx, dword [ebp + 8]
lea eax, [ebx + 0x10]
add dword [ecx + 8], eax
jmp 0x435e00
mov ebx, dword [ebp - 0x1c]
mov eax, dword [edi + 4]
mov dword [ebp - 0x28], eax
mov eax, dword [edi + 8]
add edi, 0xc
push ebx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], edi
call fcn.0048ded5
pop ecx
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x7c]
lea eax, [ebp - 0x98]
xor esi, esi
push eax
push ebx
mov dword [ebp - 0x98], esi
mov dword [ebp - 0x7c], esi
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x74], esi
call fcn.0046fbcf
mov edi, dword [ebp - 0x7c]
xor eax, eax
test ebx, ebx
jle 0x435e8c
mov eax, esi
and eax, 0x80000001
jns 0x435e54
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x28]
add eax, esi
add eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x3c]
jmp 0x435e69
lea eax, [edx + 1]
cdq
idiv ebx
xor eax, eax
cmp word [edi + edx*2], ax
jne 0x435e66
xor ecx, ecx
inc ecx
mov word [edi + edx*2], cx
mov ecx, dword [ebp - 0x10]
mov cl, byte [edx + ecx]
mov edx, dword [ebp - 0x18]
mov byte [esi + edx], cl
inc esi
cmp esi, ebx
jl 0x435e46
mov edx, dword [ebp + 8]
mov ecx, dword [ebp - 0x18]
mov dword [edx], ebx
mov dword [edx + 4], ecx
test edi, edi
je 0x435ead
push edi
call fcn.0048f3c6
xor eax, eax
pop ecx
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x10], 0x4e064826
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0x18], 0x37d45db3
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x28], 0x7e4fc22
mov dword [ebp - 0x28], 0xffffffff
push 2
call fcn.00434460
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x435ef3
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xfc]
mov dword [eax + ecx*4], 0x9ee1
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x435ee0
mov dword [ebp - 0x10], esi
jmp 0x435f0d
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe9
jle 0x435efe
mov ecx, dword [ebp - 0xfc]
inc dword [ecx + 4]
lea ecx, [ebp - 0xfc]
call fcn.00434532
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret