Function at 0x4ac713
Capabilities:
Delete registry key
Read .ini file
Set thread local storage value

Disassembly:
mov eax, 0x4c71e9
call fcn.004c60c8
sub esp, 0x2d0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x64], ecx
xor edi, edi
inc edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], 0xb445acee
mov dword [ebp - 0x38], 0xffffffff
xor ebx, ebx
mov dword [ebp - 0x18], ebx
jmp 0x4ac758
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x40], 0x951ad386
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x4ac74a
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
xor edx, edx
cmp ecx, eax
setge dl
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x18], 0xc541
jge 0x4ac7eb
mov dword [ebp - 0x24], 0x6a81
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], bl
je 0x4ac79d
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
cmp dword [ebp - 0x18], ebx
jne 0x4ac7ba
cmp dword [ebp - 0x40], ebx
je 0x4ac7ae
cmp dword [ebp - 0x24], ebx
mov eax, edi
jne 0x4ac7b0
mov eax, ebx
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
mov ecx, ebx
je 0x4ac7bc
mov ecx, edi
mov eax, dword [ebp - 0x40]
imul eax, ecx
imul eax, eax, 0xffff
test eax, eax
jne 0x4ac7cf
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x40]
sub ecx, eax
mov dword [ebp - 0x38], ecx
jmp 0x4ac823
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
xor ecx, ecx
test eax, eax
setns cl
neg ecx
je 0x4ac80e
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x3c], eax
push 4
pop esi
push esi
lea ecx, [ebp - 0x148]
call fcn.0045223e
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], 9
mov dword [ebp - 0x14], ebx
jmp 0x4ac850
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x148]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x4ac841
mov dword [ebp - 0x14], ebx
jmp 0x4ac86b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x25c], 0x6ea41824
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x4ac85a
mov dword [ebp - 0x18], ebx
jmp 0x4ac95d
mov dword [ebp - 0x1c], 0x252604
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x1c], ebx
jmp 0x4ac950
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x38], 0xf03fa9a1
mov dword [ebp - 0x2c], 0xfffffff7
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x1c], ebx
mov ecx, dword [ebp - 0x148]
je 0x4ac8ca
cmp dword [ecx + 8], ebx
mov eax, edi
jne 0x4ac8cc
mov eax, ebx
cmp eax, 0xfffffff8
sbb eax, eax
neg eax
cmp eax, dword [ecx]
jne 0x4ac8de
cmp dword [ebp - 0x24], ebx
mov ecx, ebx
je 0x4ac8e0
mov ecx, edi
xor eax, eax
cmp ecx, 0xd2af
setle al
cmp eax, 0xfffa
jbe 0x4ac8f5
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setle dl
imul edx, dword [ebp - 0x30]
sub edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
setle cl
sub ecx, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
inc ecx
xor eax, eax
cmp ecx, edi
setl al
cmp eax, dword [ebp - 0x1c]
jg 0x4ac940
cmp dword [ebp - 0x2c], ebx
mov ecx, ebx
je 0x4ac942
mov ecx, edi
mov eax, dword [ebp - 0x1c]
sub ecx, eax
mov dword [ebp - 0x25c], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jle 0x4ac88e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jle 0x4ac878
lea ecx, [ebp - 0x148]
call fcn.00452310
mov eax, dword [0xaba8d0]
test al, 1
jne 0x4ac9f0
or eax, edi
mov dword [0xaba8d0], eax
mov dword [0xaba8b0], ebx
mov dword [0xaba8b4], ebx
push ebx
push ebx
call fcn.0045cf93
mov dword [0xaba8b0], eax
mov dword [0xaba8b8], ebx
mov dword [0xaba8c0], ebx
mov dword [0xaba8cc], 0x3f800000
mov dword [ebp - 0x50], eax
mov dword [0xaba8bc], ebx
lea eax, [ebp - 0x50]
push eax
push 0x10
push ebx
lea eax, [ebp - 0x1fc]
push eax
mov ecx, 0xaba8b8
call fcn.0045cd38
mov dword [0xaba8c4], 7
mov dword [0xaba8c8], 8
push 0x4c7454
call fcn.004b0bcd
pop ecx
imul eax, dword [ebp - 0x64], 0x2710
add eax, dword [ebp - 0x48]
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x74]
push eax
call fcn.004ae52d
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
push esi
lea ecx, [ebp - 0x18c]
call fcn.0045223e
push edi
lea ecx, [ebp - 0xf0]
call fcn.0045223e
push esi
lea ecx, [ebp - 0x10c]
call fcn.0045223e
push edi
lea ecx, [ebp - 0x1e0]
call fcn.0045223e
mov dword [ebp - 0x2c], 0xe06985ba
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x1c], ebx
jmp 0x4aca5e
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18c]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x4aca4e
mov dword [ebp - 0x1c], ebx
jmp 0x4aca7b
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 0x1febaeef
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x4aca68
mov dword [ebp - 0x1c], ebx
jmp 0x4aca94
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10c]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x4aca85
mov dword [ebp - 0x1c], ebx
jmp 0x4acab1
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1e0]
mov dword [eax + ecx*4], 0x95231fbf
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x4aca9e
mov eax, dword [ebp - 0xf0]
mov dword [eax], ebx
cmp dword [eax], 3
jg 0x4acbef
mov dword [ebp - 0x18], 0xfffffffb
mov dword [ebp - 0x18], 0x1d6a
cmp dword [ebp - 0x18], 0x201e
jle 0x4acb30
mov esi, ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x2c], 0x268
mov eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x284]
call fcn.00401993
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x4acb07
mov eax, dword [eax]
push eax
call fcn.004b0bf7
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x284]
call fcn.0045261a
dec esi
dec dword [ebp - 0x2c]
jne 0x4acaed
mov esi, dword [ebp - 0x24]
inc esi
mov dword [ebp - 0x24], esi
cmp esi, 0x56af
jl 0x4acae3
mov dword [ebp - 0x24], edi
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x18], 0x1b42
jge 0x4acb4a
push str.otckncx_szpbb_nmctfs_haf_jgpgx_crl_jwfbhjj_vttfbfraj
call fcn.004b0bf7
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x4acb73
mov dword [ebp - 0x2c], 0x7fc0549e
mov dword [ebp - 0x18], ebx
jmp 0x4acb94
mov dword [ebp - 0x2c], 0xffffffff
mov eax, dword [ebp - 0x10c]
dec dword [eax]
inc dword [ebp - 0x2c]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jle 0x4acb7f
mov dword [ebp - 0x2c], 0xab1d
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, dword [edx + 8]
setl cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax + ecx*4]
cmp dword [ebp - 0x24], eax
jge 0x4acbda
test eax, eax
mov eax, ebx
je 0x4acbdc
mov eax, edi
add eax, 3
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xf0]
inc dword [eax]
jmp 0x4acabe
lea ecx, [ebp - 0x1e0]
call fcn.00452310
lea ecx, [ebp - 0x10c]
call fcn.00452310
lea ecx, [ebp - 0xf0]
call fcn.00452310
lea ecx, [ebp - 0x18c]
call fcn.00452310
cmp dword [ebp - 0x38], 0
je 0x4ace1a
mov dword [ebp - 0x18], 0x5e48d327
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4acc3d
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov dword [ebp - 0x18], 0x15
push 2
pop esi
cmp dword [ebp - 0x18], 0xfffffff9
je 0x4acd4f
mov dword [ebp - 0x14], 0x5b94
cmp dword [ebp - 0x14], 0x5eb8
jle 0x4accf4
mov ecx, ebx
mov dword [ebp - 0x24], ebx
mov eax, ebx
mov dword [ebp - 0x30], ebx
mov esi, ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x48], ebx
cdq
idiv esi
mov eax, ecx
mov ecx, edx
shl eax, cl
mov dword [ebp - 0x28], eax
mov esi, ebx
mov ecx, esi
sar eax, cl
cdq
push edx
push eax
lea ecx, [ebp - 0x29c]
call fcn.00401993
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x4acca1
mov eax, dword [eax]
push eax
call fcn.004b0bf7
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x29c]
call fcn.0045261a
inc esi
cmp esi, 0x900
mov eax, dword [ebp - 0x28]
jl 0x4acc85
mov esi, dword [ebp - 0x2c]
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 0xa6f
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
jl 0x4acc74
inc eax
mov dword [ebp - 0x30], eax
cmp eax, 0x38b1
jl 0x4acc6f
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 0x5d7
jl 0x4acc6a
push 2
pop esi
mov byte [ebp - 0x1d], bl
mov dword [ebp - 4], esi
cmp dword [ebp - 0x14], 0x589c
jge 0x4acd0e
push str.kqfg_chzyruoaa_bclga
call fcn.004b0bf7
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x4acd3a
cmp byte [ebp - 0x1d], 0
je 0x4acd47
push ebx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
dec dword [ebp - 0x18]
jmp 0x4acc47
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0x18], 0x29be1d92
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x18], ebx
jmp 0x4acd8f
mov dword [ebp - 0x38], 4
dec dword [ebp - 0x38]
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4acd8c
push ebx
push ebx
push 0x89
push 0x1ce6
call dword [sym.imp.USER32.dll_SendMessageW]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x2d
je 0x4acd67
mov dword [ebp - 0x48], 0x2fb4
cmp dword [ebp - 0x48], 0x2ff9
jle 0x4ae50e
mov esi, ebx
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x50], ebx
mov eax, esi
cdq
idiv edi
mov eax, edx
mov dword [ebp - 0x38], eax
mov esi, ebx
mov dword [ebp - 0x50], ebx
mov edi, 0x5a7b
mov ecx, ebx
sar eax, cl
cdq
push edx
push eax
mov ecx, 0xab95b8
call fcn.00452129
add ebx, esi
dec edi
mov eax, dword [ebp - 0x38]
jne 0x4acdca
inc esi
cmp esi, 0x2631
push 0
pop ebx
jl 0x4acdc2
mov edi, dword [ebp - 0x2c]
inc edi
mov dword [ebp - 0x2c], edi
cmp edi, 0x7692
mov esi, dword [ebp - 0x24]
jl 0x4acdb3
inc esi
mov dword [ebp - 0x24], esi
cmp esi, 0x3495
jl 0x4acdae
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
jmp 0x4ae50e
mov dword [ebp - 0x1c], 0x72d9ee1c
push 2
pop esi
push esi
lea ecx, [ebp - 0xd8]
call fcn.0045223e
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x2c], 0xb6a7
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x24], 0xefb659ba
mov dword [ebp - 0x14], ebx
jmp 0x4ace5c
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xd8]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x4ace4d
mov dword [ebp - 0x14], ebx
jmp 0x4ace77
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x15c], 0x276cc72b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x4ace66
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xd8]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jne 0x4acea7
mov eax, dword [ebp - 0xd8]
cmp dword [eax], ebx
mov edx, ebx
je 0x4acea9
mov edx, edi
mov ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
xor eax, eax
cmp edx, edi
sete al
cmp ecx, eax
jge 0x4acebe
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setg dl
sub edx, dword [ebp - 0x1c]
sub edx, 0x4709
cmp edx, dword [ebp - 0x2c]
jg 0x4acee0
cmp dword [ebp - 0x18], ebx
mov eax, ebx
je 0x4acee2
mov eax, edi
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x1c], ebx
jmp 0x4acfda
mov dword [ebp - 0x14], 0xbd791f9e
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x18], ebx
jmp 0x4acf18
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x26c], 0xd8142c78
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x4acf07
mov dword [ebp - 0x30], ebx
jmp 0x4acfb4
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x18], ebx
jmp 0x4acf3f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x24c], 0xfffffffa
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4acf2e
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jne 0x4acf60
mov eax, dword [ebp - 0x158]
cmp dword [ebp - 0x2c], eax
mov dword [ebp - 0x18], ebx
jge 0x4acf63
mov dword [ebp - 0x18], edi
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xd8]
mov edx, dword [eax + ecx*4]
sub edx, dword [ebp - 0x18]
add edx, 0x5c7c
mov eax, dword [ebp - 0x264]
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
inc dword [ebp - 0x24]
cmp eax, ecx
mov eax, edi
cmovle eax, ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, 0xbde8
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x24]
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edi
jle 0x4acf26
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4acfd7
push ebx
push 0x1b07
push 0x207d
call dword [sym.imp.GDI32.dll_CreatePen]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jle 0x4aceed
lea ecx, [ebp - 0xd8]
call fcn.00452310
mov eax, dword [0xaba8d0]
test al, 2
jne 0x4ad072
or eax, esi
mov dword [0xaba8d0], eax
mov dword [0xaba8e0], ebx
mov dword [0xaba8e4], ebx
push ebx
push ebx
call fcn.0045cf93
mov dword [0xaba8e0], eax
mov dword [0xaba8e8], ebx
mov dword [0xaba8f0], ebx
mov dword [0xaba8fc], 0x3f800000
mov dword [ebp - 0xbc], eax
mov dword [0xaba8ec], ebx
lea eax, [ebp - 0xbc]
push eax
push 0x10
push ebx
lea eax, [ebp - 0x20c]
push eax
mov ecx, 0xaba8e8
call fcn.0045cd38
mov dword [0xaba8f4], 7
mov dword [0xaba8f8], 8
push 0x4c744f
call fcn.004b0bcd
pop ecx
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x84], xmm0
mov dword [ebp - 0x1c], 0x14b733c6
push 3
lea ecx, [ebp - 0x174]
call fcn.0045223e
mov dword [ebp - 0x2c], 0xfff6
mov dword [ebp - 0x18], ebx
jmp 0x4ad0b0
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x174]
mov dword [eax + ecx*4], 0x383cc47d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x4ad09d
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
xor ecx, ecx
cmp edx, 0xfffffff6
setne cl
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, ecx
setl dl
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x28], eax
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x1c]
add eax, edx
neg eax
sbb eax, eax
inc eax
xor edx, edx
cmp eax, 0xeb6b9dd9
setne dl
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, edx
setne cl
add ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x1c]
jg 0x4ad11c
mov eax, dword [ebp - 0x28]
cmp dword [eax + 4], ebx
mov eax, ebx
je 0x4ad11e
mov eax, edi
cmp eax, dword [ebp - 0x1c]
jne 0x4ad13c
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4ad1c5
push ebx
call dword [sym.imp.USER32.dll_DestroyCursor]
jmp 0x4ad1c5
mov dword [ebp - 0x34], 0xd70c
mov dword [ebp - 0x34], 0x290ce96f
push 3
lea ecx, [ebp - 0x208]
call fcn.0045223e
mov dword [ebp - 0x34], 0xc00eadd5
mov dword [ebp - 0x34], 8
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x34], 0x416c
mov dword [ebp - 0x18], ebx
jmp 0x4ad18a
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x208]
mov dword [eax + ecx*4], 0x2e889ec0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x4ad177
mov dword [ebp - 0x1c], ebx
jmp 0x4ad1b1
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4ad1ae
push 0xe94
push 0x1c8e
call dword [sym.imp.USER32.dll_GetWindowLongA]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 8
jge 0x4ad195
inc dword [ebp - 0x2c]
lea ecx, [ebp - 0x208]
call fcn.00452310
lea ecx, [ebp - 0x174]
call fcn.00452310
lea eax, [ebp - 0x64]
push eax
call fcn.004ae58f
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x24], eax
mov eax, 0xfcb1
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
push edi
lea ecx, [ebp - 0x154]
call fcn.0045223e
mov dword [ebp - 0x1c], 0x23f
cmp dword [ebp - 0x1c], 0x5ff
jle 0x4ad295
mov edx, ebx
mov dword [ebp - 0x18], ebx
mov eax, ebx
mov dword [ebp - 0x14], ebx
mov esi, ebx
mov ecx, ebx
mov dword [ebp - 0x2c], ebx
add eax, esi
shl eax, cl
xor eax, edx
cdq
push edx
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00401993
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x4ad249
mov eax, dword [eax]
push eax
call fcn.004b0bf7
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x2cc]
call fcn.0045261a
mov ecx, dword [ebp - 0x2c]
inc ecx
mov dword [ebp - 0x2c], ecx
cmp ecx, 0x5cd2
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x18]
jl 0x4ad22b
inc esi
cmp esi, 0x55f4
jl 0x4ad226
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x6585
jl 0x4ad224
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0x70e2
jl 0x4ad21f
push 2
pop esi
mov dword [ebp - 0x18], 0x5fa2ef7
mov dword [ebp - 4], 6
cmp dword [ebp - 0x1c], 0xffffff87
jge 0x4ad2b4
push str.vcvuc_whbpbkp_dvqgu_xlibjvqpr_xbpp_ypc_hvdorjgn_vdbbt_hdztfsg_uffrgiwns_oxcb
call fcn.004b0bf7
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x4ad2e6
mov dword [ebp - 0x1c], 0x886a6c65
push 4
lea ecx, [ebp - 0x124]
call fcn.0045223e
mov dword [ebp - 0x14], 0x5db5a26c
mov dword [ebp - 0x28], 0x3604
mov dword [ebp - 0x44], 0xba6d
mov dword [ebp - 0x14], ebx
jmp 0x4ad327
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x154]
mov dword [eax + ecx*4], 0x53e1
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x4ad314
mov dword [ebp - 0x14], ebx
jmp 0x4ad344
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x124]
mov dword [eax + ecx*4], 0xfffffffc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x4ad331
cmp dword [ebp - 0x90], edi
jb 0x4ad383
mov eax, dword [ebp - 0x154]
cmp dword [eax], edi
sbb eax, eax
neg eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x154]
mov eax, dword [eax]
cmp dword [ebp - 0x1c], eax
je 0x4ad383
test eax, eax
mov ecx, ebx
je 0x4ad385
mov ecx, edi
mov eax, dword [ebp - 0x124]
mov dword [eax + 8], ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp - 0x8c]
cmp dword [ebp - 0x94], ebx
jne 0x4ad3a9
cmp dword [ebp - 0x1c], ebx
mov eax, ebx
je 0x4ad3ab
mov eax, edi
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x124]
cmp dword [eax + 0xc], ebx
je 0x4ad3f8
mov dword [ebp - 0x14], 0xffffffec
jmp 0x4ad3f0
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4ad3d8
push ebx
push ebx
push 0x16f7
call dword [sym.imp.GDI32.dll_PlayEnhMetaFile]
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4ad3ed
push ebx
push 0xcfc
call dword [sym.imp.USER32.dll_BeginPaint]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffea
jne 0x4ad3c2
jmp 0x4ad466
mov dword [ebp - 0x2c], 0x2932384
mov dword [ebp - 0x3c], 0x6e8d2ca8
push esi
lea ecx, [ebp - 0x180]
call fcn.0045223e
mov dword [ebp - 0x18], ebx
jmp 0x4ad42a
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x180]
mov dword [eax + ecx*4], 0xe88fefd6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4ad417
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x180]
mov dword [eax], ecx
lea ecx, [ebp - 0x180]
call fcn.00452310
lea ecx, [ebp - 0x124]
call fcn.00452310
lea ecx, [ebp - 0x154]
call fcn.00452310
cmp byte [ebp + 0xc], 0
jne 0x4ad48d
mov ecx, dword [ebp - 0x30]
test ecx, ecx
jne 0x4ad9dd
mov dword [ebp - 0xc0], 0xfffffff9
mov dword [ebp - 0x34], 0x67fa5c62
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x44], 0xfffffffc
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], 0x1c3c39ba
mov dword [ebp - 0x3c], 0x963ba20b
mov dword [ebp - 0x2c], 0x49f6d4a0
mov dword [ebp - 0x4c], ebx
push esi
lea ecx, [ebp - 0x1f8]
call fcn.0045223e
mov dword [ebp - 0x2c], 0x2776
cmp dword [ebp - 0x2c], 0x2a73
jle 0x4ad51e
call dword [sym.imp.KERNEL32.dll_GetOEMCP]
mov esi, ebx
mov dword [ebp - 0x44], ebx
mov eax, ebx
and eax, esi
cdq
push edx
push eax
mov ecx, 0xab95b8
call fcn.00452129
inc ebx
cmp ebx, 0x3b93
jl 0x4ad4f5
inc esi
cmp esi, 0x5581
push 0
pop ebx
jl 0x4ad4f2
push 2
pop esi
mov dword [ebp - 0x44], edi
mov dword [ebp - 4], 8
cmp dword [ebp - 0x2c], 0x2679
jge 0x4ad540
mov edx, str.nxbovzjn_lmt_kmouel_tmoessu_mvqupy_vxu_dofu_wncao_qsvym_zzur_nfnahnjc
mov ecx, 0xab95b8
call fcn.00453acf
or dword [ebp - 4], 0xffffffff
jmp 0x4ad572
mov dword [ebp - 0x44], 0xe856
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x18], 0xa08bbd18
mov dword [ebp - 0x1c], 0x2be2
mov dword [ebp - 0x18], ebx
jmp 0x4ad5a6
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1f8]
mov dword [eax + ecx*4], 0x714ad38d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4ad593
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0xc0], eax
je 0x4ad61d
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x2c], 0x813
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
je 0x4ad613
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x3c]
sub edx, eax
neg edx
sbb edx, edx
inc edx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x44], ecx
mov ecx, dword [ebp - 0x4c]
inc ecx
mov eax, dword [ebp - 0x28]
xor edx, edx
cmp ecx, eax
setne dl
inc edx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x1c], ebx
mov eax, edi
jne 0x4ad61f
mov eax, ebx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], ebx
jmp 0x4ad64a
mov dword [ebp - 0x34], 0xfffffffe
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4ad644
push edi
push ebx
push 0xfef
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [ebp - 0x34]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff3
jg 0x4ad627
lea ecx, [ebp - 0x1f8]
call fcn.00452310
lea eax, [ebp - 0x2dc]
push eax
mov dl, byte [ebp + 0xc]
mov ecx, dword [ebp - 0x64]
call fcn.004a1e42
pop ecx
mov esi, eax
lea edi, [ebp - 0x84]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 2
pop esi
push esi
lea ecx, [ebp - 0xa0]
call fcn.0045223e
mov dword [ebp - 0x14], 0xe19d29be
mov dword [ebp - 0x34], 0x600d5493
mov dword [ebp - 0x18], ebx
jmp 0x4ad6af
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xa0]
mov dword [eax + ecx*4], 4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4ad69c
xor edi, edi
inc edi
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], ebx
jl 0x4ad755
mov edx, dword [ebp - 0xa0]
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x18], ebx
jmp 0x4ad6df
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x58], 8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4ad6d1
mov dword [ebp - 0x58], edi
cmp dword [ebp - 0x58], ebx
jl 0x4ad6ff
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xa0]
cmp dword [eax + ecx*4], ebx
jne 0x4ad6ff
dec dword [ebp - 0x58]
jns 0x4ad6ec
cmp dword [ebp - 0x34], ebx
je 0x4ad714
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xa0]
cmp dword [eax], ecx
jge 0x4ad714
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
mov eax, dword [edx + 4]
add eax, 0x78ef
jne 0x4ad72f
cmp dword [ebp - 0x54], ebx
mov dword [ebp - 0x28], ebx
je 0x4ad732
mov dword [ebp - 0x28], edi
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x58]
xor ecx, ecx
cmp dword [ebp - 0x28], eax
setne cl
mov eax, dword [ebp - 0xa0]
mov dword [eax + edx*4], ecx
dec dword [ebp - 0x14]
mov edx, dword [ebp - 0x4c]
jns 0x4ad6cc
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4ad76b
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
lea ecx, [ebp - 0xa0]
call fcn.00452310
cmp byte [ebp + 0xc], 0
je 0x4ad9dd
cmp dword [ebp - 0x7c], 0
je 0x4ad9dd
push 4
lea ecx, [ebp - 0x198]
call fcn.0045223e
push 3
lea ecx, [ebp - 0x168]
call fcn.0045223e
mov dword [ebp - 0x14], ebx
jmp 0x4ad7bc
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x198]
mov dword [eax + ecx*4], 0x313d
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x4ad7a9
mov dword [ebp - 0x14], ebx
jmp 0x4ad7da
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x168]
mov dword [eax + ecx*4], 0xfffffff7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x4ad7c7
mov ecx, dword [ebp - 0x168]
mov dword [ecx + 4], ebx
mov edx, dword [ebp - 0x198]
mov eax, dword [ecx + 4]
mov dword [edx + eax*4], 0xecba
inc dword [ecx + 4]
cmp dword [ecx + 4], 4
jl 0x4ad7ef
lea ecx, [ebp - 0x168]
call fcn.00452310
lea ecx, [ebp - 0x198]
call fcn.00452310
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xe0], eax
push edi
lea ecx, [ebp - 0xac]
call fcn.0045223e
mov dword [ebp - 0x14], 0xc70bb743
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], 0x663b8b2
mov dword [ebp - 0x34], 0x725eff85
mov dword [ebp - 0x1c], ebx
jmp 0x4ad85d
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xac]
mov dword [eax + ecx*4], 0x2062
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x4ad84a
mov dword [ebp - 0x1c], ebx
jmp 0x4ad875
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x60], 0xdde9ab5c
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x4ad867
mov dword [ebp - 0x1c], ebx
jmp 0x4ad890
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1b0], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x4ad87f
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], ebx
jl 0x4ad93c
or eax, 0xffffffff
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xac]
cmp dword [eax + ecx*4], 0x9008cf5a
jbe 0x4ad8f6
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xac]
cmp dword [ecx + eax*4], ebx
je 0x4ad8e1
cmp dword [ecx], ebx
jne 0x4ad8f1
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xac]
cmp dword [eax + ecx*4], ebx
mov eax, ebx
je 0x4ad8f3
mov eax, edi
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0xfc]
xor ecx, ecx
cmp eax, 0x4b14151c
setle cl
mov eax, dword [ebp - 0xf4]
xor edx, edx
cmp ecx, eax
sete dl
mov eax, dword [ebp - 0xac]
imul edx, dword [eax]
sub edx, dword [eax + esi*4]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x18], edx
dec dword [ebp - 0x14]
jns 0x4ad8a2
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, 0xfffffffd
setl cl
xor eax, eax
cmp ecx, 0x639b6af4
setl al
xor ecx, ecx
cmp eax, edi
setg cl
xor eax, eax
test ecx, ecx
setle al
cmp eax, 4
jge 0x4ad99c
cmp dword [ebp - 0x34], ebx
mov edx, ebx
je 0x4ad99e
mov edx, edi
mov eax, dword [ebp - 0x1ac]
xor ecx, ecx
cmp edx, eax
setl cl
mov eax, dword [ebp - 0x60]
xor edx, edx
cmp ecx, eax
setne dl
mov eax, dword [ebp - 0x60]
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
cmp eax, ecx
sbb eax, eax
inc eax
mov dword [ebp - 0x60], eax
lea ecx, [ebp - 0xac]
call fcn.00452310
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x1c], 6
mov dword [ebp - 0x28], 0x84cbed56
mov dword [ebp - 0x28], 0x82ba8d7d
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x34], 0xd91b0598
mov dword [ebp - 0x18], ebx
push 2
pop esi
jmp 0x4ada19
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1c8], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4ada08
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, 0x69be
setl cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c4], 0xffffffff
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, edi
setg dl
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setge dl
add edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x1c]
inc edx
neg edx
sbb edx, edx
inc edx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, edx
setge cl
imul ecx, ecx, 0xa83a
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, ecx
setge dl
mov dword [ebp - 0x28], edx
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setge dl
mov ecx, 0x9956f43c
sub ecx, edx
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setg dl
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x30], 0
jne 0x4ae24e
cmp dword [ebp - 0x84], 0
jle 0x4ae24e
mov dword [ebp - 0x28], 0x2a43d953
mov dword [ebp - 0x14], 0xbad86e52
mov dword [ebp - 0x34], 0xfffffff8
mov dword [ebp - 0x34], 0xd42ca8cd
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x34], ebx
push edi
lea ecx, [ebp - 0x1a4]
call fcn.0045223e
mov dword [ebp - 0x18], ebx
jmp 0x4adb21
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1a4]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x4adb0e
mov ecx, dword [ebp - 0x1a4]
mov edx, dword [ecx]
lea eax, [edx + 1]
mov dword [ecx], eax
test edx, edx
mov ecx, edi
cmovne ecx, ebx
mov eax, dword [ebp - 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x14]
inc eax
add ecx, eax
mov eax, dword [ebp - 0x28]
xor edx, edx
cmp ecx, eax
setl dl
mov dword [ebp - 0x3c], edx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
xor edx, edx
cmp eax, ecx
setle dl
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x34], ecx
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4adb7e
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_HeapCreate]
lea ecx, [ebp - 0x1a4]
call fcn.00452310
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x28], 0x51d2
cmp dword [ebp - 0x28], 0x526d
jle 0x4adbc9
mov esi, ebx
mov edi, ebx
mov eax, edi
xor eax, esi
cdq
push edx
push eax
mov ecx, 0xab95b8
call fcn.00452129
inc edi
cmp edi, 0x68fb
jl 0x4adba0
inc esi
cmp esi, 0x109b
jl 0x4adb9e
xor edi, edi
inc edi
push 2
pop esi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x28], 0x4faa
jge 0x4adbeb
mov edx, str.kism_mulvwhaf_qjf_plxhx_tahas
mov ecx, 0xab95b8
call fcn.00453acf
or dword [ebp - 4], 0xffffffff
jmp 0x4adc1d
mov dword [ebp - 0x34], 0xc6d21cd
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x14], 0xa
cmp dword [ebp - 0x14], 0xfffffff3
jg 0x4add93
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x3c], 0x1fee
cmp dword [ebp - 0x3c], 0x2221
jle 0x4adce5
mov ecx, ebx
mov dword [ebp - 0x1c], ebx
mov eax, ebx
mov dword [ebp - 0x2c], ebx
mov esi, ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x34], ebx
cdq
idiv esi
mov eax, ecx
mov ecx, edx
shl eax, cl
mov dword [ebp - 0x4c], eax
mov esi, ebx
mov ecx, esi
sar eax, cl
cdq
push edx
push eax
lea ecx, [ebp - 0x2b4]
call fcn.00401993
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x4adc92
mov eax, dword [eax]
push eax
call fcn.004b0bf7
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x2b4]
call fcn.0045261a
inc esi
cmp esi, 0xff0
mov eax, dword [ebp - 0x4c]
jl 0x4adc76
mov esi, dword [ebp - 0x28]
inc esi
mov dword [ebp - 0x28], esi
cmp esi, 0x6f80
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x1c]
jl 0x4adc65
inc eax
mov dword [ebp - 0x2c], eax
cmp eax, 0x1c71
jl 0x4adc60
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, 0x4e5f
jl 0x4adc5b
push 2
pop esi
mov dword [ebp - 0x28], 0x4d1b40e1
mov dword [ebp - 4], 0xc
cmp dword [ebp - 0x3c], 0x1e69
jge 0x4add07
push str.vcrosywo_bqput_pjktcgcas_fqdmwx_fhyomeexn_dnbzv_cwkvri_uneajd_gxsvu_kglavx_nyx_ggkzkos_pqij_jnkengeo
call fcn.004b0bf7
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x4add39
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x2c], edi
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
xor edx, edx
cmp eax, ecx
setg dl
xor ecx, ecx
cmp edx, 0x5e314a5e
setge cl
mov eax, dword [ebp - 0x18]
sub eax, ecx
xor ecx, ecx
cmp eax, 0x3e86
setg cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], 0x29c9b29c
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp eax, ecx
setl dl
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x18], ebx
jne 0x4add93
dec dword [ebp - 0x14]
jmp 0x4adc31
push esi
lea ecx, [ebp - 0x1d4]
call fcn.0045223e
mov dword [ebp - 0x14], 0xdf1febae
mov dword [ebp - 0x28], 0x1cdcb363
mov dword [ebp - 0x14], ebx
jmp 0x4addc1
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1d4]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x4addb2
mov dword [ebp - 0x14], ebx
jmp 0x4adddc
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x244], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x4addcb
mov dword [ebp - 0x14], ebx
jmp 0x4ade03
mov dword [ebp - 0x18], ebx
jmp 0x4addf8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1c0], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x4addeb
inc dword [ebp - 0x28]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jle 0x4adde6
lea ecx, [ebp - 0x1d4]
call fcn.00452310
mov dword [ebp - 0x14], 0x5ec1
cmp dword [ebp - 0x14], 0x61ac
jle 0x4ade89
mov dword [ebp - 0x18], ebx
mov ecx, ebx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x3c], 0x2cbd
mov eax, ebx
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov edi, ecx
mov ecx, eax
sar edi, cl
mov eax, esi
xor eax, edi
cdq
push edx
push eax
mov ecx, 0xab95b8
call fcn.00452129
inc esi
cmp esi, 0x1733
jl 0x4ade3f
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp eax, 0x109b
mov ecx, dword [ebp - 0x2c]
jl 0x4ade37
mov dword [ebp - 4], 0xe
cmp dword [ebp - 0x14], 0x5da1
jge 0x4adea8
mov edx, str.gqdheskcl_tkopp_aqwabu
mov ecx, 0xab95b8
call fcn.00453acf
or dword [ebp - 4], 0xffffffff
jmp 0x4adeda
push 4
lea ecx, [ebp - 0x1bc]
call fcn.0045223e
mov dword [ebp - 0x24], 0x66fe7d8a
mov dword [ebp - 0x28], 0xb3b9
mov dword [ebp - 0x24], ebx
jmp 0x4ae281
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1bc]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x4ae26e
mov dword [ebp - 0x24], 3
cmp dword [ebp - 0x24], ebx
jl 0x4ae2ba
dec dword [ebp - 0x28]
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x4ae2b5
push ebx
push 0x2580
push 0x254
push 0x65f
call dword [sym.imp.GDI32.dll_SetPixel]
dec dword [ebp - 0x24]
jns 0x4ae293
lea ecx, [ebp - 0x1bc]
call fcn.00452310
lea ecx, [ebp - 0x84]
call fcn.004ac1bf
cmp dword [ebp - 0x38], 0
jne 0x4ae406
cmp dword [ebp - 0x30], 0
je 0x4ae406
mov dword [ebp - 0x28], 0xc5378470
movdqa xmm0, xmmword [0xaadac0]
movdqu xmmword [ebp - 0x22c], xmm0
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0xc8], ebx
mov dword [ebp - 0xc4], ebx
push dword [ebp + 8]
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x22c]
push eax
push ebx
lea ecx, [ebp - 0xcc]
call fcn.00453fa0
push esi
lea ecx, [ebp - 0x1ec]
call fcn.0045223e
mov dword [ebp - 0x14], ebx
jmp 0x4ae349
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x70], 0xfffa
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x4ae33b
mov dword [ebp - 0x14], ebx
jmp 0x4ae367
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1ec]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x4ae354
mov eax, dword [ebp - 0x68]
cmp eax, dword [ebp - 0x6c]
je 0x4ae3b9
cmp dword [ebp - 0x68], ebx
je 0x4ae3a6
mov eax, dword [ebp - 0x68]
cmp dword [ebp - 0x6c], 4
jge 0x4ae389
cmp dword [ebp - 0x68], ebx
mov ecx, ebx
je 0x4ae38b
mov ecx, edi
mov eax, dword [ebp - 0x6c]
xor edx, edx
cmp ecx, eax
setne dl
mov eax, dword [ebp - 0x68]
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x28]
mov edx, edi
jge 0x4ae3a8
mov edx, ebx
mov eax, dword [ebp - 0x68]
xor ecx, ecx
cmp edx, eax
setg cl
cmp dword [ebp - 0x68], ecx
mov edx, edi
jge 0x4ae3bb
mov edx, ebx
mov eax, dword [ebp - 0x28]
sub edx, eax
mov eax, dword [ebp - 0x68]
xor ecx, ecx
cmp edx, eax
setge cl
mov eax, dword [ebp - 0xcc]
mov dword [eax], ecx
lea ecx, [ebp - 0x1ec]
call fcn.00452310
lea ecx, [ebp - 0xcc]
call fcn.00452310
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x30]
call fcn.004ac4bb
mov esi, eax
mov dword [ebp - 0xe4], esi
lea eax, [ebp - 0x74]
push eax
call fcn.004ae52d
mov dword [eax], esi
mov dword [ebp - 0x14], 6
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 0x18], 0x5300ce3
push 0xfffffffffffffff5
pop esi
mov dword [ebp - 0x14], esi
jmp 0x4ae4a2
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x38], 0x6de0184d
mov dword [ebp - 0x34], edi
cmp dword [ebp - 0x30], ebx
jne 0x4ae45a
mov ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
neg ecx
mov eax, dword [ebp - 0x14]
imul eax, ecx
test eax, eax
mov eax, ebx
je 0x4ae450
mov eax, edi
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x14], ebx
mov eax, ebx
jbe 0x4ae45c
mov eax, edi
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xffff
sbb ecx, ecx
neg ecx
mov eax, dword [ebp - 0x30]
xor edx, edx
cmp ecx, eax
setle dl
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
setg cl
add ecx, dword [ebp - 0x30]
mov dword [ebp - 0x34], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jg 0x4ae423
mov dword [ebp - 0x18], ebx
jmp 0x4ae508
mov dword [ebp - 0x2c], 0x151d1a93
mov dword [ebp - 0x38], 0x81b27067
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp eax, ecx
setne dl
imul edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
cmp ecx, 0xfffffff8
setle dl
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x1c]
sub ecx, eax
mov dword [ebp - 0x2c], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x37
jge 0x4ae4b0
mov eax, dword [ebp + 8]
mov edi, eax
lea esi, [ebp - 0xe4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret