Function at 0x432ef0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffeb0
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x130], edx
mov dword [ebp - 0xb8], edx
mov dword [ebp - 0x48], eax
xor eax, eax
push ebp
push 0x434362
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.0064dfa0
mov dword [0x66b594], eax
lea edx, [ebp - 0x130]
mov eax, dword [0x6696d0]
mov eax, dword [eax + 4]
call fcn.0061980c
mov eax, dword [ebp - 0x130]
call fcn.0064d6d4
mov dword [0x66b598], eax
mov eax, dword [0x6690d8]
test byte [eax + 7], 0x20
je 0x432f71
lea edx, [ebp - 0x11c]
mov eax, dword [ebp - 0x48]
call fcn.005c0e14
lea ecx, [ebp - 0x11c]
xor edx, edx
mov eax, dword [ebp - 0x48]
call fcn.005e74c4
mov eax, dword [ebp - 0x48]
mov al, byte [eax + 0x14e]
mov byte [ebp - 0xd5], al
mov eax, dword [0x6698c8]
test byte [eax], 8
setne al
mov byte [ebp - 0xd6], al
xor edx, edx
mov eax, dword [ebp - 0x48]
call fcn.0055d2d4
cmp byte [ebp - 0xd6], 0
je 0x432fae
mov eax, 0x1fae
call fcn.004d8134
mov eax, dword [ebp - 0x48]
call fcn.005b82f4
mov dl, 1
mov eax, dword [ebp - 0x48]
call fcn.005e75fc
call fcn.00434be4
mov eax, dword [ebp - 0x48]
mov dword [0x66b590], eax
xor ebx, ebx
xor eax, eax
mov dword [0x66b580], eax
push ebp
call fcn.00430ea8
pop ecx
test al, al
je 0x4341d7
cmp dword [ebp - 0x34], 0
jne 0x432ffa
mov eax, 0x434370
call fcn.0061fa3c
jmp 0x4341d7
test byte [ebp - 0x30], 1
je 0x4330bd
mov ecx, dword [ebp - 0x48]
mov dl, 1
mov eax, dword [0x52dd04]
call fcn.0052de40
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
mov eax, dword [eax + 8]
mov edx, dword [eax + 0x1d4]
mov dword [ebp - 0xb4], edx
mov edx, dword [eax + 0x604]
mov dword [ebp - 0xb0], edx
mov edx, dword [ebp - 0x48]
mov edx, dword [edx + 0x1d4]
mov dword [eax + 0x1d4], edx
mov edx, dword [ebp - 0x48]
mov edx, dword [edx + 0x604]
mov dword [eax + 0x604], edx
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0xa4]
call fcn.0052e4ec
mov eax, dword [ebp - 0xa4]
mov eax, dword [eax + 8]
mov dword [0x66b590], eax
mov eax, dword [0x66b590]
mov byte [eax + 0x400], 0
mov eax, dword [0x66b590]
call fcn.005b4f84
mov eax, dword [0x6690d8]
test byte [eax + 7], 0x20
je 0x43313b
lea edx, [ebp - 0x11c]
mov eax, dword [0x66b590]
call fcn.005c0e14
lea ecx, [ebp - 0x11c]
xor edx, edx
mov eax, dword [0x66b590]
call fcn.005e74c4
jmp 0x43313b
xor eax, eax
mov dword [ebp - 0xa4], eax
xor eax, eax
mov dword [ebp - 0xb4], eax
xor eax, eax
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x48]
mov dword [0x66b590], eax
call fcn.006557f0
mov eax, dword [ebp - 0x48]
fstp qword [eax + 0x1b0]
wait
mov eax, dword [0x6690d8]
test byte [eax + 7], 0x20
je 0x433115
lea edx, [ebp - 0x11c]
mov eax, dword [ebp - 0x48]
call fcn.005c0e14
lea ecx, [ebp - 0x11c]
xor edx, edx
mov eax, dword [ebp - 0x48]
call fcn.005e74c4
mov edx, dword [0x6692a8]
mov eax, dword [ebp - 0x48]
call fcn.005e1914
test al, al
je 0x43313b
mov eax, dword [ebp - 0x48]
mov byte [eax + 0x468], 1
mov dl, 1
mov eax, dword [ebp - 0x48]
call fcn.005e75fc
mov byte [0x66b589], 1
mov cl, 4
mov dl, 0x16
mov eax, dword [0x66b590]
call fcn.0055f6fc
mov dl, 0x79
mov eax, dword [0x66b590]
call fcn.0055f6b0
mov eax, dword [0x66b590]
mov eax, dword [eax + 0x148]
mov dword [0x66b5a4], eax
mov eax, dword [0x6691b4]
mov eax, dword [eax]
call fcn.006247dc
push 0
mov eax, dword [0x66984c]
mov eax, dword [eax]
push eax
call sub.user32.dll_EnableWindow
mov eax, dword [ebp - 0x34]
mov dword [0x66b5a0], eax
mov byte [ebp - 0x79], 0
mov eax, dword [0x66b594]
cmp dword [eax + 0x18], 0
jne 0x4331c9
xor edx, edx
mov eax, dword [0x66b594]
call fcn.0064e1f0
mov eax, dword [0x66b590]
mov eax, dword [eax + 0x13c]
mov edx, dword [eax + 0x18]
dec edx
sub edx, dword [0x66b5b0]
mov eax, dword [0x66b594]
call fcn.0064e1f0
call fcn.00430ac0
xor eax, eax
mov dword [ebp - 0x98], eax
push ebp
call fcn.00431584
pop ecx
test al, al
je 0x4340ab
mov eax, 0x66b5c8
mov edx, 0x14
call fcn.00658544
lea edx, [ebp - 0xb8]
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x160]
call fcn.00654994
mov dword [0x66b5c8], 0x14
mov eax, dword [ebp - 0xb8]
mov dword [0x66b5cc], eax
call fcn.004fe288
movzx edx, word [ebp - 0x24]
mov ecx, dword [0x66b594]
imul edx, dword [ecx + 0x18]
mov ecx, 0x434394
call fcn.004fb54c
cmp byte [0x66b59c], 0
je 0x4332e9
cmp byte [0x66b5e5], 0
jne 0x4332e9
call fcn.0042f690
test byte [ebp - 0x30], 0x10
je 0x4332b8
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4340a1
mov dword [ebp - 0xbc], 1
mov eax, dword [0x66b594]
mov ebx, dword [eax + 0x18]
dec ebx
test ebx, ebx
jl 0x433292
inc ebx
xor esi, esi
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
inc esi
dec ebx
jne 0x433285
movzx eax, word [ebp - 0x24]
cmp eax, dword [ebp - 0xbc]
jle 0x4332aa
push ebp
call fcn.00432504
pop ecx
call fcn.0042f690
inc dword [ebp - 0xbc]
dec edi
jne 0x433275
jmp 0x4340a1
mov eax, dword [0x66b594]
mov edi, dword [eax + 0x18]
dec edi
test edi, edi
jl 0x4340a1
inc edi
xor esi, esi
movzx ebx, word [ebp - 0x24]
test ebx, ebx
jle 0x4332e0
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
dec ebx
jne 0x4332d4
inc esi
dec edi
jne 0x4332cc
jmp 0x4340a1
mov eax, dword [0x6696d0]
test byte [eax], 2
je 0x434044
cmp byte [0x66b5e5], 0
je 0x433907
mov eax, dword [0x66b5c0]
and eax, 0x80000001
jns 0x433315
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x433328
mov eax, 0x4343a0
call fcn.0061f884
jmp 0x4340ab
mov edx, dword [0x6696d0]
mov edx, dword [edx + 8]
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
call fcn.00652ca8
mov dword [ebp - 0x9c], eax
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
mov edx, 4
call fcn.00652cb4
mov edx, dword [0x66b5b4]
shr edx, 1
mov ecx, edx
cdq
idiv ecx
mov edx, eax
mov eax, 4
call fcn.00652c5c
mov edx, 4
call fcn.00652cb4
mov dword [ebp - 0xcc], eax
call fcn.0064dfa0
mov dword [ebp - 0xa8], eax
call fcn.0064dfa0
mov dword [ebp - 0xac], eax
mov edi, dword [ebp - 0x9c]
dec edi
test edi, edi
jl 0x433487
inc edi
mov dword [ebp - 0xc0], 0
push ebp
mov eax, dword [ebp - 0xc0]
call fcn.00432e9c
pop ecx
mov ebx, dword [ebp - 0xa0]
shr ebx, 1
dec ebx
test ebx, ebx
jl 0x433468
inc ebx
xor esi, esi
test esi, 1
je 0x43341d
mov edx, dword [0x6696d0]
mov edx, dword [edx + 8]
imul edx, dword [ebp - 0xc0]
add edx, esi
mov eax, dword [ebp - 0xa8]
call fcn.0064e1f0
mov edx, dword [0x6696d0]
mov edx, dword [edx + 8]
imul edx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xa0]
sub eax, esi
dec eax
add edx, eax
mov eax, dword [ebp - 0xa8]
call fcn.0064e1f0
jmp 0x433460
mov edx, dword [0x6696d0]
mov edx, dword [edx + 8]
imul edx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xa0]
sub eax, esi
dec eax
add edx, eax
mov eax, dword [ebp - 0xa8]
call fcn.0064e1f0
mov edx, dword [0x6696d0]
mov edx, dword [edx + 8]
imul edx, dword [ebp - 0xc0]
add edx, esi
mov eax, dword [ebp - 0xa8]
call fcn.0064e1f0
inc esi
dec ebx
jne 0x4333d0
inc dword [ebp - 0xc0]
dec edi
jne 0x4333af
jmp 0x433487
mov edx, 0x7fffffff
mov eax, dword [ebp - 0xa8]
call fcn.0064e1f0
mov edx, dword [0x66b5b4]
add edx, edx
mov eax, dword [ebp - 0xa8]
mov ebx, dword [eax + 0x18]
mov eax, ebx
call fcn.00652cb4
cmp eax, ebx
jg 0x433477
mov edx, dword [0x66b5b4]
add edx, edx
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax + 0x18]
call fcn.00652cb4
cdq
idiv dword [0x66b5b4]
mov edi, eax
dec edi
test edi, edi
jl 0x4335a5
inc edi
mov dword [ebp - 0xd4], 0
mov ebx, dword [0x66b5b4]
shr ebx, 1
dec ebx
test ebx, ebx
jl 0x433598
inc ebx
xor esi, esi
test byte [ebp - 0xd4], 1
je 0x43352d
mov eax, dword [0x66b5c0]
shr eax, 1
push eax
mov eax, esi
pop edx
mov ecx, edx
cdq
idiv ecx
mov ecx, esi
sub ecx, edx
mov eax, dword [0x66b5c0]
shr eax, 1
push eax
mov eax, esi
pop edx
push ecx
mov ecx, edx
cdq
idiv ecx
pop ecx
mov eax, dword [0x66b5c0]
shr eax, 1
dec eax
sub eax, edx
add ecx, eax
mov dword [ebp - 0xd0], ecx
jmp 0x433533
mov dword [ebp - 0xd0], esi
mov eax, dword [ebp - 0xd4]
add eax, eax
mov edx, dword [ebp - 0xd0]
imul edx, dword [ebp - 0xcc]
add eax, edx
mov edx, dword [ebp - 0xa8]
mov edx, dword [edx + 0x1c]
mov edx, dword [edx + eax*4]
mov eax, dword [ebp - 0xac]
call fcn.0064e1f0
mov eax, dword [ebp - 0xd4]
add eax, eax
mov edx, dword [ebp - 0xd0]
imul edx, dword [ebp - 0xcc]
add eax, edx
mov edx, dword [ebp - 0xa8]
mov edx, dword [edx + 0x1c]
mov edx, dword [edx + eax*4 + 4]
mov eax, dword [ebp - 0xac]
call fcn.0064e1f0
inc esi
dec ebx
jne 0x4334ea
inc dword [ebp - 0xd4]
dec edi
jne 0x4334d6
call fcn.004fe288
movzx edx, word [ebp - 0x24]
mov ecx, dword [ebp - 0xac]
imul edx, dword [ecx + 0x18]
mov dword [eax + 0x278], edx
cmp byte [0x66b59c], 0
je 0x433618
call fcn.0042f690
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4338ec
mov eax, dword [ebp - 0xac]
mov ebx, dword [eax + 0x18]
dec ebx
test ebx, ebx
jl 0x433610
inc ebx
xor esi, esi
push ebp
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
call fcn.00432e14
pop ecx
mov eax, esi
cdq
idiv dword [0x66b5b4]
and al, 1
xor al, 1
mov byte [ebp - 0x79], al
inc esi
dec ebx
jne 0x4335e9
dec edi
jne 0x4335d8
jmp 0x4338ec
mov eax, dword [0x66b594]
cmp dword [eax + 0x18], 1
jne 0x43364b
call fcn.0042f690
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4338ec
inc dword [ebp - 0x98]
push ebp
xor eax, eax
call fcn.00432e14
pop ecx
dec edi
jne 0x433634
jmp 0x4338ec
mov al, byte [0x66b59e]
shl eax, 0x10
mov ax, word [0x66b59c]
push eax
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 0x18]
mov edx, dword [0x66b5b4]
add edx, edx
mov ecx, edx
cdq
idiv ecx
mov edx, eax
imul edx, dword [0x66b5ac]
xor ecx, ecx
mov eax, dword [0x66b57c]
call fcn.0042f16c
test al, al
je 0x4338ec
call fcn.0042f690
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4337ec
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x4336be
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
jne 0x433751
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 0x18]
cdq
idiv dword [0x66b5b4]
dec eax
cmp eax, 0
jl 0x4337e5
mov dword [ebp - 0xd4], eax
test byte [ebp - 0xd4], 1
je 0x4336f4
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x43370a
test byte [ebp - 0xd4], 1
jne 0x43373d
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
jne 0x43373d
mov ebx, dword [0x66b5b4]
dec ebx
test ebx, ebx
jl 0x43373d
inc ebx
xor esi, esi
push ebp
mov eax, dword [ebp - 0xd4]
imul dword [0x66b5b4]
add eax, esi
mov edx, dword [ebp - 0xac]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4]
call fcn.00432e14
pop ecx
inc esi
dec ebx
jne 0x433718
dec dword [ebp - 0xd4]
cmp dword [ebp - 0xd4], 0xffffffff
jne 0x4336de
jmp 0x4337e5
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 0x18]
cdq
idiv dword [0x66b5b4]
mov ebx, eax
dec ebx
test ebx, ebx
jl 0x4337e5
inc ebx
mov dword [ebp - 0xd4], 0
test byte [ebp - 0xd4], 1
je 0x433789
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
je 0x43379f
test byte [ebp - 0xd4], 1
jne 0x4337dc
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
jne 0x4337dc
mov eax, dword [0x66b5b4]
dec eax
test eax, eax
jl 0x4337dc
inc eax
mov dword [ebp - 0xdc], eax
xor esi, esi
push ebp
mov eax, dword [ebp - 0xd4]
imul dword [0x66b5b4]
add eax, esi
mov edx, dword [ebp - 0xac]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4]
call fcn.00432e14
pop ecx
inc esi
dec dword [ebp - 0xdc]
jne 0x4337b2
inc dword [ebp - 0xd4]
dec ebx
jne 0x433773
dec edi
jne 0x4336a0
push ebp
call fcn.00432504
pop ecx
mov al, byte [0x66b59e]
shl eax, 0x10
mov ax, word [0x66b59c]
push eax
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 0x18]
mov edx, dword [0x66b5b4]
add edx, edx
mov ecx, edx
cdq
idiv ecx
mov edx, eax
imul edx, dword [0x66b5ac]
mov cl, 1
mov eax, dword [0x66b57c]
call fcn.0042f16c
test al, al
je 0x4338ec
call fcn.0042f690
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 0x18]
cdq
idiv dword [0x66b5b4]
dec eax
cmp eax, 0
jl 0x4338ec
mov dword [ebp - 0xd4], eax
test byte [ebp - 0xd4], 1
je 0x43387f
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
je 0x4338a2
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
je 0x4338a2
test byte [ebp - 0xd4], 1
jne 0x4338d9
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x4338a2
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
jne 0x4338d9
mov edi, dword [0x66b5b4]
dec edi
test edi, edi
jl 0x4338d9
inc edi
xor esi, esi
push ebp
mov eax, dword [ebp - 0xd4]
imul dword [0x66b5b4]
add eax, esi
mov edx, dword [ebp - 0xac]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4]
call fcn.00432e14
pop ecx
mov byte [ebp - 0x79], 1
inc esi
dec edi
jne 0x4338b0
dec dword [ebp - 0xd4]
cmp dword [ebp - 0xd4], 0xffffffff
jne 0x43385c
mov eax, dword [ebp - 0xac]
call fcn.0064e5c0
mov eax, dword [ebp - 0xa8]
call fcn.0064e5c0
jmp 0x4340a1
cmp byte [0x66b5de], 0
jne 0x433cec
mov eax, dword [0x66b594]
cmp dword [eax + 0x18], 1
jne 0x433947
call fcn.0042f690
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4340a1
inc dword [ebp - 0x98]
push ebp
xor eax, eax
call fcn.00432e14
pop ecx
dec edi
jne 0x433930
jmp 0x4340a1
mov al, byte [0x66b59e]
shl eax, 0x10
mov ax, word [0x66b59c]
push eax
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
mov edx, 2
call fcn.00652ca8
mov edx, eax
imul edx, dword [0x66b5ac]
xor ecx, ecx
mov eax, dword [0x66b57c]
call fcn.0042f16c
test al, al
je 0x4340a1
call fcn.0042f690
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x4339aa
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
jne 0x433ab3
test byte [ebp - 0x30], 0x10
je 0x433a2c
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433bb0
mov eax, dword [0x66b594]
test byte [eax + 0x18], 1
je 0x4339dd
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_StartPage
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_EndPage
mov eax, dword [0x66b594]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x433a24
test esi, 1
je 0x433a00
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x433a15
test esi, 1
jne 0x433a1e
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
jne 0x433a1e
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
dec esi
cmp esi, 0xffffffff
jne 0x4339eb
dec edi
jne 0x4339bc
jmp 0x433bb0
mov eax, dword [0x66b594]
test byte [eax + 0x18], 1
je 0x433a58
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433a58
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_StartPage
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_EndPage
dec edi
jne 0x433a3f
mov eax, dword [0x66b594]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x433bb0
test esi, 1
je 0x433a7f
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x433a94
test esi, 1
jne 0x433aa8
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
jne 0x433aa8
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433aa8
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
dec edi
jne 0x433a9c
dec esi
cmp esi, 0xffffffff
jne 0x433a6a
jmp 0x433bb0
test byte [ebp - 0x30], 0x10
je 0x433b32
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433bb0
mov eax, dword [0x66b594]
mov ebx, dword [eax + 0x18]
dec ebx
test ebx, ebx
jl 0x433b0c
inc ebx
xor esi, esi
test esi, 1
je 0x433aea
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
je 0x433aff
test esi, 1
jne 0x433b08
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
jne 0x433b08
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
inc esi
dec ebx
jne 0x433ad5
mov eax, dword [0x66b594]
test byte [eax + 0x18], 1
je 0x433b2d
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_StartPage
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_EndPage
dec edi
jne 0x433ac5
jmp 0x433bb0
mov eax, dword [0x66b594]
mov edi, dword [eax + 0x18]
dec edi
test edi, edi
jl 0x433b84
inc edi
xor esi, esi
test esi, 1
je 0x433b57
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
je 0x433b6c
test esi, 1
jne 0x433b80
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
jne 0x433b80
movzx ebx, word [ebp - 0x24]
test ebx, ebx
jle 0x433b80
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
dec ebx
jne 0x433b74
inc esi
dec edi
jne 0x433b42
mov eax, dword [0x66b594]
test byte [eax + 0x18], 1
je 0x433bb0
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433bb0
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_StartPage
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_EndPage
dec edi
jne 0x433b97
push ebp
call fcn.00432504
pop ecx
mov al, byte [0x66b59e]
shl eax, 0x10
mov ax, word [0x66b59c]
push eax
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
mov edx, 2
call fcn.00652ca8
mov edx, eax
imul edx, dword [0x66b5ac]
mov cl, 1
mov eax, dword [0x66b57c]
call fcn.0042f16c
test al, al
je 0x4340a1
call fcn.0042f690
test byte [ebp - 0x30], 0x10
je 0x433c77
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4340a1
mov eax, dword [0x66b594]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x433c6f
test esi, 1
je 0x433c3e
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
je 0x433c60
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
je 0x433c60
test esi, 1
jne 0x433c69
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x433c60
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
jne 0x433c69
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
dec esi
cmp esi, 0xffffffff
jne 0x433c1c
dec edi
jne 0x433c0e
jmp 0x4340a1
mov eax, dword [0x66b594]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x4340a1
test esi, 1
je 0x433cab
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
je 0x433ccd
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
je 0x433ccd
test esi, 1
jne 0x433ce1
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x433ccd
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
jne 0x433ce1
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433ce1
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
dec edi
jne 0x433cd5
dec esi
cmp esi, 0xffffffff
jne 0x433c89
jmp 0x4340a1
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
cmp eax, dword [0x66b5b4]
jg 0x433d32
call fcn.0042f690
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4340a1
mov eax, dword [0x66b594]
mov ebx, dword [eax + 0x18]
dec ebx
test ebx, ebx
jl 0x433d2a
inc ebx
xor esi, esi
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
inc esi
dec ebx
jne 0x433d1d
dec edi
jne 0x433d0d
jmp 0x4340a1
mov al, byte [0x66b59e]
shl eax, 0x10
mov ax, word [0x66b59c]
push eax
mov edx, dword [0x66b5b4]
add edx, edx
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
call fcn.00652ca8
mov edx, eax
imul edx, dword [0x66b5ac]
xor ecx, ecx
mov eax, dword [0x66b57c]
call fcn.0042f16c
test al, al
je 0x4340a1
call fcn.0042f690
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
mov edx, dword [0x66b5b4]
call fcn.00652ca8
mov dword [ebp - 0xc8], eax
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x433db1
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
jne 0x433e7e
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433f4e
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
mov edx, dword [0x66b5b4]
add edx, edx
mov ecx, edx
cdq
idiv ecx
mov eax, edx
mov ecx, dword [0x66b5b4]
mov edx, 1
call fcn.00652c7c
test al, al
je 0x433dfe
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_StartPage
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_EndPage
mov eax, dword [ebp - 0xc8]
dec eax
cmp eax, 0
jl 0x433e72
mov dword [ebp - 0xc4], eax
test byte [ebp - 0xc4], 1
je 0x433e26
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x433e3c
test byte [ebp - 0xc4], 1
jne 0x433e63
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
jne 0x433e63
mov ebx, dword [0x66b5b4]
dec ebx
test ebx, ebx
jl 0x433e63
inc ebx
xor esi, esi
push ebp
mov eax, dword [ebp - 0xc4]
imul dword [0x66b5b4]
add eax, esi
call fcn.00432e14
pop ecx
inc esi
dec ebx
jne 0x433e4a
dec dword [ebp - 0xc4]
cmp dword [ebp - 0xc4], 0xffffffff
jne 0x433e10
dec edi
jne 0x433dbd
jmp 0x433f4e
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x433f4e
mov ebx, dword [ebp - 0xc8]
dec ebx
test ebx, ebx
jl 0x433f06
inc ebx
mov dword [ebp - 0xc4], 0
test byte [ebp - 0xc4], 1
je 0x433eb6
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
je 0x433ecc
test byte [ebp - 0xc4], 1
jne 0x433efd
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
jne 0x433efd
mov eax, dword [0x66b5b4]
dec eax
test eax, eax
jl 0x433efd
inc eax
mov dword [ebp - 0xdc], eax
xor esi, esi
push ebp
mov eax, dword [ebp - 0xc4]
imul dword [0x66b5b4]
add eax, esi
call fcn.00432e14
pop ecx
inc esi
dec dword [ebp - 0xdc]
jne 0x433edf
inc dword [ebp - 0xc4]
dec ebx
jne 0x433ea0
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
mov edx, dword [0x66b5b4]
add edx, edx
mov ecx, edx
cdq
idiv ecx
mov eax, edx
mov ecx, dword [0x66b5b4]
mov edx, 1
call fcn.00652c7c
test al, al
je 0x433f47
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_StartPage
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_EndPage
dec edi
jne 0x433e8a
push ebp
call fcn.00432504
pop ecx
mov al, byte [0x66b59e]
shl eax, 0x10
mov ax, word [0x66b59c]
push eax
mov edx, dword [0x66b5b4]
add edx, edx
mov eax, dword [0x66b594]
mov eax, dword [eax + 0x18]
call fcn.00652ca8
mov edx, eax
imul edx, dword [0x66b5ac]
mov cl, 1
mov eax, dword [0x66b57c]
call fcn.0042f16c
test al, al
je 0x4340a1
call fcn.0042f690
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4340a1
mov eax, dword [ebp - 0xc8]
dec eax
cmp eax, 0
jl 0x43403b
mov dword [ebp - 0xc4], eax
test byte [ebp - 0xc4], 1
je 0x433fe2
mov al, byte [0x4344c4]
cmp al, byte [0x66b59e]
je 0x434005
mov al, byte [0x4344bc]
cmp al, byte [0x66b59e]
je 0x434005
test byte [ebp - 0xc4], 1
jne 0x43402c
mov al, byte [0x4344b8]
cmp al, byte [0x66b59e]
je 0x434005
mov al, byte [0x4344c0]
cmp al, byte [0x66b59e]
jne 0x43402c
mov ebx, dword [0x66b5b4]
dec ebx
test ebx, ebx
jl 0x43402c
inc ebx
xor esi, esi
push ebp
mov eax, dword [ebp - 0xc4]
imul dword [0x66b5b4]
add eax, esi
call fcn.00432e14
pop ecx
inc esi
dec ebx
jne 0x434013
dec dword [ebp - 0xc4]
cmp dword [ebp - 0xc4], 0xffffffff
jne 0x433fbf
dec edi
jne 0x433fa9
jmp 0x4340a1
call fcn.0042f690
test byte [ebp - 0x30], 0x10
je 0x434079
movzx edi, word [ebp - 0x24]
test edi, edi
jle 0x4340a1
mov eax, dword [0x66b594]
mov ebx, dword [eax + 0x18]
dec ebx
test ebx, ebx
jl 0x434074
inc ebx
xor esi, esi
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
inc esi
dec ebx
jne 0x434067
dec edi
jne 0x434057
jmp 0x4340a1
mov eax, dword [0x66b594]
mov edi, dword [eax + 0x18]
dec edi
test edi, edi
jl 0x4340a1
inc edi
xor esi, esi
movzx ebx, word [ebp - 0x24]
test ebx, ebx
jle 0x43409d
push ebp
mov eax, esi
call fcn.00432e14
pop ecx
dec ebx
jne 0x434091
inc esi
dec edi
jne 0x434089
cmp dword [0x66b5b0], 0
setg bl
push ebp
call fcn.00432504
pop ecx
call fcn.004fe288
mov dl, 1
call fcn.004fb5a4
mov eax, dword [0x66b5a0]
push eax
call sub.gdi32.dll_DeleteDC
mov eax, dword [ebp - 0x3c]
push eax
call sub.kernel32.dll_GlobalFree
mov eax, dword [ebp - 0x38]
push eax
call sub.kernel32.dll_GlobalFree
mov eax, dword [0x669650]
xor edx, edx
mov dword [eax], edx
cmp byte [0x66b5e5], 0
jne 0x4340f7
mov eax, dword [0x669a78]
cmp byte [eax], 0
je 0x434110
mov eax, dword [0x6696d0]
and byte [eax], 0xfd
cmp byte [0x66b5e6], 0
je 0x434110
mov eax, dword [0x6696d0]
or byte [eax], 2
cmp byte [0x66b5de], 0
je 0x434132
mov eax, dword [0x6696d0]
and byte [eax], 0xfe
cmp byte [0x66b5e7], 0
je 0x434132
mov eax, dword [0x6696d0]
or byte [eax], 1
mov byte [0x66b589], 0
mov eax, dword [0x6691b4]
mov eax, dword [eax]
call fcn.006247d4
mov edx, dword [0x66b5a4]
mov eax, dword [0x66b590]
call fcn.0055c5a4
mov edx, 3
mov eax, dword [0x66b590]
call fcn.0055f788
mov eax, dword [0x66b590]
cmp eax, dword [ebp - 0x48]
je 0x43419a
mov eax, dword [ebp - 0xa4]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0xb4]
mov dword [eax + 0x1d4], edx
mov edx, dword [ebp - 0xb0]
mov dword [eax + 0x604], edx
mov eax, dword [ebp - 0xa4]
call fcn.004028c0
push 0xffffffffffffffff
mov eax, dword [0x66984c]
mov eax, dword [eax]
push eax
call sub.user32.dll_EnableWindow
mov eax, dword [0x669510]
mov byte [eax + 0xa], 1
mov dl, 0x18
mov eax, dword [ebp - 0x48]
call fcn.0055f6b0
call fcn.00534a24
mov eax, dword [ebp - 0x48]
call fcn.0055f764
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x174]
mov edx, dword [eax]
call dword [edx + 0x68]
call fcn.00430d20
mov eax, dword [0x66b580]
push eax
call sub.winspool.drv_ClosePrinter
mov eax, dword [0x66b598]
call fcn.004028c0
mov eax, dword [0x66b594]
call fcn.0064e5c0
mov eax, dword [0x66b578]
call fcn.004028c0
mov dl, byte [ebp - 0xd5]
mov eax, dword [ebp - 0x48]
call fcn.0055d2d4
cmp byte [ebp - 0xd6], 0
je 0x434226
mov eax, 0x1fae
call fcn.004d8134
test bl, bl
je 0x43433e
mov eax, 0x4344c8
mov cl, 0xd
mov dl, 3
call fcn.0061faa0
cmp ax, 6
jne 0x43433e
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x13c]
mov edx, dword [eax + 0x18]
sub edx, dword [0x66b5b0]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + edx*4]
mov dl, byte [0x4344bc]
call fcn.00553328
mov edx, dword [eax + 8]
mov edx, dword [edx + 0x18]
mov dword [ebp - 0xfc], edx
mov eax, dword [eax + 0x28]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x13c]
call fcn.0064e250
mov dl, byte [0x4344bc]
call fcn.0055339c
mov edx, dword [eax + 8]
mov ecx, dword [edx + 0x18]
mov dword [ebp - 0xec], ecx
mov ebx, dword [edx + 8]
mov dword [ebp - 0xe8], ebx
push 0x7fffffff
mov al, byte [0x4344bc]
push eax
mov ecx, ebx
mov esi, dword [ebp - 0xec]
mov edx, esi
mov eax, dword [ebp - 0x48]
call fcn.005bb588
push esi
push ebx
mov al, byte [0x4344bc]
push eax
mov ecx, dword [ebp - 0xf8]
mov edx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x48]
call fcn.005be038
mov eax, 0x4b0
call fcn.004d8134
lea edx, [ebp - 0x150]
mov eax, dword [ebp - 0x48]
call fcn.005c0e14
lea esi, [ebp - 0x140]
lea edi, [ebp - 0x12c]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
push 0x7fffffff
mov al, byte [0x43452c]
push eax
mov ecx, dword [ebp - 0x128]
dec ecx
mov edx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x48]
call fcn.005bb588
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x174]
mov edx, dword [eax]
call dword [edx + 0x68]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x434369
lea eax, [ebp - 0x130]
call fcn.00403274
lea eax, [ebp - 0xb8]
call fcn.00403880
ret