Function at 0x45fd50
Capabilities:
Get graphical window text
Hide graphical window
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x1a0
push ebx
mov ebx, dword [esp + 0x1ac]
mov eax, dword [ebx + 4]
test eax, eax
jne 0x45fd7e
mov eax, dword [ebx]
push 0
push 0
push eax
push 0
call fcn.0048bd90
add esp, 0x10
pop ebx
add esp, 0x1a0
ret
push ebp
xor eax, eax
push esi
push edi
mov ecx, 0x9e
mov edi, 0x6a0cc0
rep stosd dword es:[edi], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], eax
mov eax, accept
mov esi, 1
mov dword [0x6a0cc0], eax
mov dword [0x6a0cc4], eax
mov dword [0x6a0cc8], eax
mov dword [0x6a0ccc], eax
mov dword [0x6a0d34], esi
mov dword [0x6a0ce8], 3
mov eax, dword [ebx + 4]
cmp byte [eax], 0x2d
mov ebp, esi
jne 0x460141
cmp byte [eax + 1], 0x74
je 0x460141
mov edi, eax
push 0x64
push edi
mov dword [esp + 0x20], edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45fdfc
mov dword [0x6a0cd0], esi
push 0x6f
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45fe11
mov dword [0x6a0cd4], esi
push 0x73
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45fe26
mov dword [0x6a0cd8], esi
push 0x53
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45fe3b
mov dword [0x6a0cdc], esi
push 0x65
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45feaf
lea ebp, [eax + 1]
mov dword [0x6a0cec], esi
mov al, byte [ebp]
test al, al
je 0x45feaf
movzx ecx, al
push ecx
call fcn.005daff5
add esp, 4
test eax, eax
je 0x45feaf
push ebp
call fcn.005d9a55
add esp, 4
test eax, eax
jne 0x45fe7f
mov dword [0x6a0cec], esi
jmp 0x45feaf
cmp eax, esi
jne 0x45fe8f
mov dword [0x6a0cec], 2
jmp 0x45feaf
cmp eax, 2
jne 0x45fea0
mov dword [0x6a0cec], 3
jmp 0x45feaf
cmp eax, 3
jne 0x45feaf
mov dword [0x6a0cec], 4
push 0x45
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45fec8
mov dword [0x6a0cec], 2
push 0x42
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45fedd
mov dword [0x6a0cf4], esi
push 0x6d
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45fef2
mov dword [0x6a0cf0], esi
push 0x4d
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ff07
mov dword [0x6a0e00], esi
push 0x76
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ff27
mov cl, byte [eax + 1]
xor edx, edx
cmp cl, 0x30
setne dl
mov dword [0x6a0d24], edx
push 0x7a
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ff47
mov dl, byte [eax + 1]
xor ecx, ecx
cmp dl, 0x30
setne cl
mov dword [0x6a0d28], ecx
push 0x69
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ff5c
mov dword [0x6a0d2c], esi
push 0x43
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ff71
mov dword [0x6a0d14], esi
push 0x6c
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ffb8
lea ebp, [eax + 1]
mov dword [0x6a0cf8], esi
mov al, byte [ebp]
test al, al
je 0x45ffb8
movzx edx, al
push edx
call fcn.005daff5
add esp, 4
test eax, eax
je 0x45ffb8
push ebp
call fcn.005d9a55
add esp, 4
cmp eax, esi
mov dword [0x6a0cfc], eax
jg 0x45ffb8
mov dword [0x6a0cfc], esi
push 0x48
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ffcd
mov dword [0x6a0d04], esi
push 0x54
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x45ffe2
mov dword [0x6a0d08], esi
push 0x6e
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46002e
lea ebp, [eax + 1]
mov dword [0x6a0ce0], esi
mov al, byte [ebp]
test al, al
je 0x46002e
movzx eax, al
push eax
call fcn.005daff5
add esp, 4
test eax, eax
je 0x46002e
push ebp
call fcn.005d9a55
add esp, 4
test eax, eax
mov dword [0x6a0ce0], eax
jl 0x460028
cmp eax, 2
jle 0x46002e
mov dword [0x6a0ce0], esi
push 0x78
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460043
mov dword [0x6a0ce4], esi
push 0x68
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46005e
xor eax, eax
mov dword [0x6a0d34], eax
mov dword [0x6a0ce8], eax
push 0x77
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4600a8
lea ebp, [eax + 1]
mov al, byte [ebp]
test al, al
je 0x4600a8
movzx ecx, al
push ecx
call fcn.005daff5
add esp, 4
test eax, eax
je 0x4600a8
push ebp
call fcn.005d9a55
add esp, 4
test eax, eax
mov dword [0x6a0ce8], eax
jl 0x46009e
cmp eax, 3
jle 0x4600a8
mov dword [0x6a0ce8], 3
push 0x70
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4600cf
mov eax, dword [0x6a0cf8]
test eax, eax
je 0x4600c9
mov eax, dword [0x6a0cfc]
test eax, eax
je 0x4600cf
mov dword [0x6a0d0c], esi
push 0x61
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4600e4
mov dword [0x6a0d20], esi
push 0x6b
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460104
mov cl, byte [eax + 1]
xor edx, edx
cmp cl, 0x31
setne dl
mov dword [0x6a0d1c], edx
push 0x44
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460119
mov dword [0x6a0d30], esi
mov eax, dword [ebx + 8]
test eax, eax
mov ebp, 2
jne 0x460141
mov eax, dword [ebx]
push 0
push 0
push eax
push 0
call fcn.0048bd90
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a0
ret
mov dword [0x6a0d38], 8
mov eax, 0x6a0d3c
mov ecx, dword [eax - 4]
add ecx, 8
mov dword [eax], ecx
add eax, 4
cmp eax, 0x6a0e00
jl 0x460150
mov edx, dword [ebx + ebp*4]
push 2
push 0x5f7d68
push edx
call fcn.005f18c9
add esp, 0xc
test eax, eax
jne 0x460210
mov eax, dword [ebx + ebp*4]
mov cl, byte [eax + 2]
add eax, 2
test cl, cl
jne 0x460194
mov dword [esp + 0x20], 1
jmp 0x460203
push 0x5f5014
push eax
xor esi, esi
call fcn.005dad9d
add esp, 8
test eax, eax
je 0x4601f1
push eax
call fcn.005d9a55
add esp, 4
test eax, eax
mov dword [esi*4 + 0x6a0d38], eax
jle 0x4601ec
test esi, esi
jle 0x4601d3
mov ecx, dword [esi*4 + 0x6a0d34]
cmp eax, ecx
jg 0x4601d3
inc ecx
mov dword [esi*4 + 0x6a0d38], ecx
inc esi
cmp esi, 0x32
jge 0x460203
push 0x5f5014
push 0
call fcn.005dad9d
add esp, 8
test eax, eax
jne 0x4601a8
cmp esi, 0x32
jge 0x460203
mov ecx, 0x32
sub ecx, esi
lea edi, [esi*4 + 0x6a0d38]
xor eax, eax
rep stosd dword es:[edi], eax
mov eax, dword [ebx + ebp*4 + 4]
inc ebp
test eax, eax
je 0x460125
mov eax, dword [ebx + ebp*4]
cmp byte [eax], 0x2b
jne 0x46033e
push 0x74
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460232
or dword [0x6a0d10], 1
mov ecx, dword [ebx + ebp*4]
push 0x66
push ecx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46024b
or dword [0x6a0d10], 2
mov edx, dword [ebx + ebp*4]
push 0x6e
push edx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460264
or dword [0x6a0d10], 4
mov eax, dword [ebx + ebp*4]
push 0x78
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46027d
or dword [0x6a0d10], 8
mov ecx, dword [ebx + ebp*4]
push 0x73
push ecx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460296
or dword [0x6a0d10], 0x10
mov edx, dword [ebx + ebp*4]
push 0x62
push edx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4602af
or dword [0x6a0d10], 0x20
mov eax, dword [ebx + ebp*4]
push 0x6c
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4602c8
or dword [0x6a0d10], 0x40
mov ecx, dword [ebx + ebp*4]
push 0x4c
push ecx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4602e4
or dword [0x6a0d10], 0x80
mov edx, dword [ebx + ebp*4]
push 0x65
push edx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460300
or dword [0x6a0d10], 0x100
mov eax, dword [ebx + ebp*4]
push 0x64
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46031c
or dword [0x6a0d10], 0x200
mov eax, dword [ebx + ebp*4 + 4]
inc ebp
test eax, eax
jne 0x46033e
mov ecx, dword [ebx]
push eax
push eax
push ecx
push eax
call fcn.0048bd90
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a0
ret
cmp byte [eax], 0x22
mov esi, dword [esp + 0x1c0]
mov edi, ebp
mov dword [esp + 0x3c], edi
jne 0x4603ad
push 0
push 0x400
push esi
push ebp
push ebx
call fcn.0051d080
mov ebp, eax
add esp, 0x14
test ebp, ebp
jge 0x460384
mov edx, dword [ebx]
push 3
push 0
push edx
push 0
call fcn.0048bd90
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a0
ret
push 0x20
push esi
call fcn.0055ac10
mov al, byte [esi]
add esp, 8
cmp al, 0x40
jne 0x46039e
push esi
call fcn.0055ad60
add esp, 4
mov edx, dword [ebx + edi*4]
mov ecx, esi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x4603a3
mov eax, dword [ebx + edi*4]
push 0x100
push 4
push eax
call fcn.00425670
mov eax, dword [ebx + edi*4]
mov cl, byte [eax]
add esp, 0xc
cmp cl, 0x3d
jne 0x4604e7
mov cl, byte [eax + 1]
test cl, cl
je 0x4604e7
mov eax, dword [esp + 0x1c8]
xor esi, esi
test eax, eax
je 0x460435
mov ecx, eax
mov edx, dword [ecx + 0x3020]
push edx
call fcn.00434880
add esp, 4
test eax, eax
je 0x460435
mov eax, dword [ebx + edi*4]
mov ecx, dword [esp + 0x1c8]
mov edx, dword [ecx + 0x3020]
inc eax
push eax
add edx, 0x1070
push edx
call fcn.005f1860
add esp, 8
test eax, eax
jne 0x460435
mov eax, dword [esp + 0x1c8]
mov esi, dword [eax + 0x3020]
test esi, esi
jne 0x4604b6
mov dword [esp + 0x1c], 0
lea ecx, [ecx]
test esi, esi
jne 0x4604b6
mov esi, dword [0x634560]
test esi, esi
je 0x460488
mov edi, edi
cmp dword [esp + 0x1c], 1
je 0x460466
mov ecx, dword [esp + 0x1cc]
cmp dword [esi + 0x2100], ecx
jne 0x46047e
mov edx, dword [ebx + edi*4]
inc edx
push edx
lea eax, [esi + 0x1070]
push eax
call fcn.005f1860
add esp, 8
test eax, eax
je 0x460488
mov esi, dword [esi + 0x2104]
test esi, esi
jne 0x460450
mov eax, dword [esp + 0x1c]
inc eax
cmp eax, 1
mov dword [esp + 0x1c], eax
jle 0x460440
test esi, esi
jne 0x4604b6
mov ecx, dword [ebx]
push 3
push 0
push ecx
push 0
call fcn.0048bd90
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a0
ret
mov edx, dword [esi]
push edx
call fcn.0058ea30
mov esi, eax
add esp, 4
test esi, esi
mov dword [esp + 0x10], esi
jne 0x460539
mov eax, dword [ebx]
push 3
push 0
push eax
push 0
call fcn.0048bd90
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a0
ret
push 0x10
push eax
call fcn.0058eb40
push eax
call fcn.0058ea30
mov esi, eax
add esp, 0xc
test esi, esi
mov dword [esp + 0x10], esi
jne 0x460539
mov ecx, dword [esp + 0x1cc]
mov edx, dword [ebx + edi*4]
push ecx
push edx
call fcn.005091b0
mov esi, eax
add esp, 8
test esi, esi
mov dword [esp + 0x10], esi
jne 0x460539
mov edi, dword [ebx + edi*4]
cmp byte [edi], 0x40
jne 0x4604cb
push edi
call fcn.0058ea90
add esp, 4
test eax, eax
jne 0x46049a
mov eax, dword [esp + 0x20]
inc ebp
test eax, eax
je 0x460605
test esi, esi
je 0x46147d
cmp dword [esi + 0x1314], 9
jne 0x46147d
mov ecx, dword [ebx + ebp*4]
lea eax, [ebx + ebp*4]
xor edi, edi
test ecx, ecx
je 0x4605ac
mov esi, dword [esp + 0x10]
mov ebx, eax
add esi, 0x138c
mov edx, dword [eax]
push edx
call fcn.005d9a55
add esp, 4
test eax, eax
mov dword [esi], eax
jle 0x4605a7
test edi, edi
jle 0x460592
mov ecx, dword [esi - 4]
cmp eax, ecx
jg 0x460592
inc ecx
mov dword [esi], ecx
inc edi
add esi, 4
cmp edi, 0x32
jge 0x4605c4
mov ecx, dword [ebx + 4]
add ebx, 4
test ecx, ecx
mov eax, ebx
jne 0x460573
cmp edi, 0x32
jge 0x4605c4
mov eax, dword [esp + 0x10]
lea edx, [eax + edi*4 + 0x138c]
mov ecx, 0x32
sub ecx, edi
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x1488]
test eax, eax
je 0x4605ea
push 1
push 0
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, dword [esi + 0x1488]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
push 1
push esi
call fcn.0058ee20
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1a0
ret
mov eax, dword [ebx + ebp*4]
test eax, eax
je 0x4606ce
push eax
call fcn.0051c210
add esp, 4
test eax, eax
je 0x4606ce
mov eax, dword [ebx + ebp*4 + 4]
test eax, eax
je 0x4606ce
push eax
call fcn.0051c210
add esp, 4
test eax, eax
je 0x4606ce
mov edx, dword [ebx + ebp*4]
push edx
call fcn.005d9a55
mov dword [0x6a0cc0], eax
mov eax, dword [ebx + ebp*4 + 4]
push eax
call fcn.005d9a55
add ebp, 2
mov dword [0x6a0cc4], eax
mov eax, dword [ebx + ebp*4]
add esp, 8
test eax, eax
je 0x4606ce
push eax
call fcn.0051c210
add esp, 4
test eax, eax
je 0x4606ce
mov eax, dword [ebx + ebp*4 + 4]
test eax, eax
je 0x4606ce
push eax
call fcn.0051c210
add esp, 4
test eax, eax
je 0x4606ce
mov ecx, dword [ebx + ebp*4]
push ecx
call fcn.005d9a55
mov dword [0x6a0cc8], eax
mov edx, dword [ebx + ebp*4 + 4]
push edx
call fcn.005d9a55
mov dword [0x6a0ccc], eax
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
je 0x4606cb
push 0x66
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4606cb
mov dword [0x6a0d18], 1
add ebp, 2
mov eax, dword [ebx + ebp*4]
test eax, eax
je 0x4606ea
mov al, byte [eax]
cmp al, 0x2f
je 0x4606e3
cmp al, byte [0x61a5c0]
jne 0x4606ea
mov dword [esp + 0x20], ebp
inc ebp
jmp 0x4606f2
mov dword [esp + 0x20], 0
cmp dword [ebx + ebp*4], 0
mov edi, dword [esp + 0x1bc]
mov dword [esp + 0x24], 0
je 0x46084e
mov edx, dword [ebx + ebp*4 + 4]
test edx, edx
lea ecx, [ebx + ebp*4 + 4]
mov eax, ebp
je 0x46072b
lea esp, [esp]
mov edx, dword [ecx + 4]
add ecx, 4
inc eax
test edx, edx
jne 0x460720
cmp eax, ebp
mov dword [esp + 0x1c], eax
jl 0x46084e
mov eax, dword [esp + 0x1c]
push ebx
push edi
push eax
mov byte [edi], 0
call fcn.0051c470
push 0x20
push edi
mov dword [esp + 0x4c], 0
call fcn.005da7f0
mov esi, eax
add esp, 0x14
test esi, esi
je 0x46077f
lea ecx, [esi + 1]
push ecx
call fcn.0051c210
add esp, 4
test eax, eax
je 0x46077f
push esi
call fcn.005d9a55
add esp, 4
mov dword [esp + 0x38], eax
mov byte [esi], 0
cmp byte [edi], 0x22
jne 0x4607b5
lea esi, [edi + 1]
push 0x22
push esi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4607b5
mov byte [eax], 0
mov eax, esi
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4607a0
sub eax, edx
inc eax
push eax
push esi
push edi
call fcn.005daa60
add esp, 0xc
push 0x5f7b88
push edi
call fcn.00422dc0
add esp, 8
test eax, eax
jne 0x4607eb
push str..ico
push edi
call fcn.00422dc0
add esp, 8
test eax, eax
jne 0x4607eb
push str..dll
push edi
call fcn.00422dc0
add esp, 8
test eax, eax
je 0x46080c
push edi
push edi
call fcn.004222f0
add esp, 8
test eax, eax
je 0x460368
push 1
push edi
call fcn.00424420
add esp, 8
test eax, eax
jne 0x46081f
mov eax, dword [esp + 0x1c]
dec eax
cmp eax, ebp
mov dword [esp + 0x1c], eax
jge 0x460737
jmp 0x46084e
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
push ecx
mov dword [ebx + eax*4], 0
mov edx, dword [0x6a0f3c]
push edi
push edx
call dword [sym.imp.SHELL32.dll_ExtractIconA]
cmp eax, 1
mov dword [esp + 0x24], eax
jne 0x46084e
mov dword [esp + 0x24], 0
mov edi, dword [esp + 0x1c0]
mov byte [edi], 0
mov eax, dword [ebx + ebp*4]
test eax, eax
je 0x4608a0
push 0x5f5980
push eax
call fcn.005f1860
add esp, 8
test eax, eax
je 0x46089f
mov eax, dword [ebx + ebp*4]
push 0x5f7d54
push eax
call fcn.005f1860
add esp, 8
test eax, eax
je 0x46089f
mov ecx, dword [ebx + ebp*4]
mov al, byte [ecx]
cmp al, 0x40
jne 0x46099d
mov edx, edi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x460895
inc ebp
mov eax, dword [ebx + ebp*4]
test eax, eax
lea esi, [ebx + ebp*4]
je 0x460a46
mov ecx, dword [esp + 0x1bc]
mov byte [ecx], 0
cmp dword [esi], 0
je 0x460929
mov ebx, esi
nop
mov edx, dword [esi]
push edx
call fcn.0051c210
add esp, 4
test eax, eax
jne 0x460929
mov eax, dword [esp + 0x1bc]
cmp byte [eax], 0
je 0x4608f2
mov edi, eax
dec edi
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4608e0
mov cx, word [0x5f4858]
mov word [edi], cx
mov eax, dword [esi]
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4608f6
mov edi, dword [esp + 0x1bc]
sub eax, esi
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x460907
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
add ebx, 4
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx]
inc ebp
test eax, eax
mov esi, ebx
jne 0x4608c0
mov esi, dword [esp + 0x1bc]
push esi
call fcn.0055aba0
mov al, byte [esi]
add esp, 4
test al, al
je 0x460a46
mov ebx, esi
mov edi, ebx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x460948
mov dx, word [0x5f5014]
mov eax, dword [esp + 0x1b8]
mov word [edi], dx
mov ebp, dword [eax + ebp*4]
test ebp, ebp
je 0x460a15
mov eax, ebp
mov edx, ebp
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x460970
mov edi, ebx
sub eax, edx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x460980
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x460a33
cmp al, 0x22
je 0x4609c8
push 0x2e
push ecx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4608a0
mov ecx, dword [ebx + ebp*4]
push ecx
call fcn.0051c3e0
add esp, 4
test eax, eax
jne 0x4608a0
push 0
push 0x400
push edi
push ebp
push ebx
call fcn.0051d080
mov esi, eax
add esp, 0x14
test esi, esi
jl 0x460368
push edi
push edi
call fcn.004222f0
add esp, 8
test eax, eax
je 0x4604cb
push 1
push edi
call fcn.00424420
add esp, 8
test eax, eax
je 0x460a0d
lea ebp, [esi + 1]
jmp 0x4608a0
mov byte [edi], 0
jmp 0x4608a0
mov edi, ebx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x460a18
mov cx, word [0x5f7d50]
mov word [edi], cx
mov dl, byte [0x5f7d52]
mov byte [edi + 2], dl
push ebx
push 0x132
push 0x6a0e04
call fcn.00425550
add esp, 0xc
mov esi, dword [esp + 0x10]
xor ebp, ebp
or edi, 0xffffffff
test esi, esi
jne 0x460b16
mov eax, dword [esp + 0x18]
test eax, eax
je 0x460a72
push 0x63
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
jne 0x46147d
cmp dword [0x6a0cc0], edi
mov eax, accept
jne 0x460a84
mov dword [0x6a0cc0], eax
cmp dword [0x6a0cc4], edi
jne 0x460a91
mov dword [0x6a0cc4], eax
cmp dword [0x6a0cc8], edi
jne 0x460a9e
mov dword [0x6a0cc8], eax
cmp dword [0x6a0ccc], edi
jne 0x460aab
mov dword [0x6a0ccc], eax
mov eax, dword [esp + 0x1cc]
mov ecx, dword [esp + 0x1b8]
mov edx, dword [esp + 0x3c]
push 0
push eax
mov eax, dword [ecx + edx*4]
push 0
push 0
push 9
push eax
call fcn.00596330
mov ebp, eax
add esp, 0x18
test ebp, ebp
jne 0x460ae5
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1a0
ret
push ebp
call fcn.0058ea30
mov esi, eax
add esp, 4
test esi, esi
mov dword [esp + 0x10], esi
je 0x460ad8
mov ecx, dword [esp + 0x1c4]
mov eax, 1
mov dword [esi + 0x1324], eax
mov dword [esi + 0x1320], eax
mov dword [esi + 0x1d58], ecx
mov eax, dword [esi + 0x1d58]
test eax, eax
je 0x460b33
push eax
call fcn.0041bc20
add esp, 4
test eax, eax
jne 0x460b33
mov dword [esi + 0x1d58], eax
cmp dword [esi + 0x1314], 9
jne 0x460c5b
mov eax, dword [esp + 0x20]
test eax, eax
je 0x460bec
mov edx, dword [esp + 0x1b8]
mov ecx, dword [edx + eax*4]
push ecx
lea edx, [esp + 0x80]
push 0x132
push edx
call fcn.00425550
lea edi, [esp + 0x88]
add esp, 0xc
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x460b74
mov ax, word [0x5f4858]
mov word [edi], ax
mov edi, dword [esp + 0x10]
mov al, byte [edi + 0x1d5c]
test al, al
lea esi, [edi + 0x1d5c]
je 0x460bab
lea ecx, [esp + 0x7c]
push esi
push ecx
call fcn.005f1860
add esp, 8
test eax, eax
je 0x460bf0
lea edx, [esp + 0x7c]
push edx
push 0x132
push esi
call fcn.00425550
mov eax, dword [edi + 0x14ac]
mov ecx, dword [edi + 0x1480]
push esi
push eax
push ecx
call fcn.0048a270
mov edx, dword [edi + 0x1480]
push 0x7d000
push 0x7d000
push 1
push edx
call fcn.00489e90
add esp, 0x28
jmp 0x460bf0
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x1c0]
cmp byte [eax], 0
je 0x460c11
push eax
push 0x432
add edi, 0x1920
push edi
call fcn.00425550
add esp, 0xc
mov eax, dword [esp + 0x24]
test eax, eax
je 0x460c5b
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x18a8]
test eax, eax
je 0x460c2e
push eax
call dword [sym.imp.USER32.dll_DestroyIcon]
mov eax, dword [esp + 0x24]
mov edx, dword [esi]
mov ecx, eax
push ecx
push 1
push 0x80
push edx
mov dword [esi + 0x18a8], eax
mov dword [esp + 0x34], 0
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [esp + 0x14], 1
mov ebx, dword [esp + 0x18]
test ebx, ebx
je 0x460d06
push 0x67
push ebx
call fcn.005d9b20
mov esi, eax
add esp, 8
test esi, esi
je 0x460d06
mov al, byte [esi + 1]
inc esi
test al, al
mov edi, 1
je 0x460cb6
movzx eax, al
push eax
call fcn.005daff5
add esp, 4
test eax, eax
je 0x460cb6
push esi
call fcn.005d9a55
mov edi, eax
add esp, 4
test edi, edi
jg 0x460cac
xor edi, edi
jmp 0x460cb6
cmp edi, 3
jle 0x460cb6
mov edi, 3
mov esi, dword [esp + 0x10]
mov ecx, dword [esi]
push ecx
call fcn.00597230
add esp, 4
test eax, eax
je 0x460cda
mov eax, dword [esp + 0x14]
or eax, 1
mov dword [esi + 0x131c], edi
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x131c]
test eax, eax
je 0x460cef
push esi
call fcn.00590d80
add esp, 4
jmp 0x460d0a
mov edx, dword [esi]
push 0x37
push 0
push 0
push 0
push 0
push 0
push edx
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x460d0a
mov esi, dword [esp + 0x10]
test ebp, ebp
mov edi, 1
jne 0x461442
push ebp
push esi
call fcn.0057cb80
add esp, 8
test ebx, ebx
je 0x460faf
push 0x63
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460d6a
mov eax, dword [esi + 0x132c]
test eax, eax
jne 0x461442
cmp dword [esi + 0x1314], edi
je 0x461442
mov eax, dword [esi]
push ebp
push ebp
push 0x10
push eax
mov dword [esi + 0x132c], edi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x461442
push 0x6b
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460e7f
cmp dword [esi + 0x1314], 9
jne 0x460e7f
mov edi, dword [esp + 0x1c0]
mov edx, dword [esi]
mov ecx, dword [0x6a0d1c]
push 0x400
push edi
push edx
mov dword [esi + 0x1354], ecx
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 0x20
push edi
call fcn.005d9b20
mov ecx, dword [esi + 0x1354]
mov edi, dword [esp + 0x1c4]
add esp, 8
test ecx, ecx
je 0x460e1e
lea ecx, [esi + 9]
sub edi, ecx
lea ecx, [ecx]
mov dl, byte [ecx]
mov byte [edi + ecx], dl
inc ecx
test dl, dl
jne 0x460dd0
test eax, eax
je 0x460e11
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x460de0
mov edi, dword [esp + 0x1bc]
sub eax, edx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x460df1
mov ebx, dword [esp + 0x18]
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x1bc]
mov ecx, dword [esi]
push eax
push ecx
jmp 0x460e6f
lea ecx, [esi + 8]
sub edi, ecx
mov dl, byte [ecx]
mov byte [edi + ecx], dl
inc ecx
test dl, dl
jne 0x460e23
test eax, eax
je 0x460e64
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x460e33
mov edi, dword [esp + 0x1bc]
sub eax, edx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x460e44
mov ebx, dword [esp + 0x18]
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x1bc]
mov eax, dword [esi]
push edx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
or dword [esp + 0x14], 1
mov edi, 1
push 0x62
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460eb9
cmp dword [esi + 0x1314], 9
jne 0x460eb9
mov eax, dword [esi + 0x1488]
test eax, eax
je 0x460eb9
mov ecx, dword [esi]
push 0
push 0x8098
push ecx
mov dword [esi + 0x2150], edi
call fcn.00590500
add esp, 0xc
push 0x52
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460edd
mov edx, dword [esi]
push edx
call fcn.00528f90
mov eax, dword [esp + 0x18]
add esp, 4
or eax, edi
mov dword [esp + 0x14], eax
push 0x68
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460efb
mov eax, dword [0x6a0ce8]
mov dword [esi + 0x18d8], eax
or dword [esp + 0x14], edi
push 0x77
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460f20
mov eax, dword [esp + 0x14]
mov ecx, dword [0x6a0ce8]
or eax, edi
mov dword [esi + 0x18d8], ecx
mov dword [esp + 0x14], eax
push 0x6e
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
jne 0x460f3e
push 0x68
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460f7d
push 0x68
push ebx
call fcn.005d9b20
mov edx, dword [esi]
add esp, 8
test eax, eax
je 0x460f6f
push edx
call fcn.0058ee70
add esp, 4
test eax, eax
je 0x460f62
mov eax, dword [esi]
push edi
push eax
jmp 0x460f71
mov ecx, dword [esi]
push 0
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x460f79
push edi
push edx
call fcn.004a8840
add esp, 8
or dword [esp + 0x14], edi
push 0x78
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460faf
push 0x61
push ebx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x460fa2
mov eax, dword [esi]
push 3
push eax
jmp 0x460fa7
mov ecx, dword [esi]
push 6
push ecx
call fcn.004a8560
add esp, 8
mov edx, dword [esi]
mov ebx, dword [sym.imp.USER32.dll_IsIconic]
push edx
call ebx
test eax, eax
jne 0x461148
mov eax, dword [esi]
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
test eax, eax
jne 0x461148
mov edx, dword [esi]
lea ecx, [esp + 0x28]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esi]
push eax
call fcn.0058ee70
add esp, 4
test eax, eax
je 0x461006
mov edx, dword [0x6a0f44]
push 2
lea ecx, [esp + 0x2c]
push ecx
push edx
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov edx, dword [0x6a0cc0]
cmp edx, 0xffffffff
mov esi, dword [esp + 0x28]
jne 0x46101d
mov edx, esi
mov dword [0x6a0cc0], edx
cmp dword [0x6a0cc4], 0xffffffff
mov edi, dword [esp + 0x2c]
jne 0x461030
mov dword [0x6a0cc4], edi
mov ecx, dword [0x6a0cc8]
cmp ecx, 0xffffffff
jne 0x461046
mov ecx, accept
mov dword [0x6a0cc8], ecx
mov eax, dword [0x6a0ccc]
cmp eax, 0xffffffff
jne 0x46105a
mov eax, accept
mov dword [0x6a0ccc], eax
cmp edx, 0x80000000
je 0x461316
cmp ecx, 0x80000000
jne 0x46107a
mov ecx, dword [esp + 0x30]
sub ecx, esi
mov dword [0x6a0cc8], ecx
cmp eax, 0x80000000
jne 0x46108d
mov edx, dword [esp + 0x34]
sub edx, edi
mov dword [0x6a0ccc], edx
mov esi, dword [esp + 0x10]
mov eax, dword [esi]
push eax
call fcn.0058ee70
add esp, 4
test eax, eax
jne 0x4610b9
mov ecx, dword [0x6a0f40]
push 0x6a0cc4
push 0x6a0cc0
push ecx
call fcn.00508a10
add esp, 0xc
mov eax, dword [esp + 0x18]
test eax, eax
je 0x46111d
push 0x66
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46111d
mov eax, dword [esi]
push 0
lea edx, [esp + 0x2c]
push edx
push eax
call fcn.00591060
mov edx, dword [esi]
lea ecx, [esp + 0x4c]
push ecx
push edx
call fcn.00591190
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x44]
mov edi, dword [0x6a0cc8]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x48]
sub eax, ebx
add edi, eax
mov eax, dword [0x6a0ccc]
sub ecx, edx
add esp, 0x14
add eax, ecx
mov dword [0x6a0cc8], edi
mov dword [0x6a0ccc], eax
mov edx, dword [0x6a0ccc]
mov eax, dword [0x6a0cc8]
mov ecx, dword [0x6a0cc4]
push 1
push edx
mov edx, dword [0x6a0cc0]
push eax
mov eax, dword [esi]
push ecx
push edx
push eax
call dword [sym.imp.USER32.dll_MoveWindow]
jmp 0x461316
mov esi, dword [esp + 0x10]
xor eax, eax
mov ecx, 0xb
lea edi, [esp + 0x50]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x50]
mov dword [esp + 0x50], 0x2c
mov edx, dword [esi]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowPlacement]
mov edx, dword [0x6a0cc0]
cmp edx, 0xffffffff
mov edi, dword [esp + 0x6c]
jne 0x461186
mov edx, edi
mov dword [0x6a0cc0], edx
cmp dword [0x6a0cc4], 0xffffffff
mov ebp, dword [esp + 0x70]
jne 0x461199
mov dword [0x6a0cc4], ebp
mov ecx, dword [0x6a0cc8]
cmp ecx, 0xffffffff
jne 0x4611af
mov ecx, accept
mov dword [0x6a0cc8], ecx
mov eax, dword [0x6a0ccc]
cmp eax, 0xffffffff
jne 0x4611c3
mov eax, accept
mov dword [0x6a0ccc], eax
cmp edx, 0x80000000
je 0x4612e6
cmp ecx, 0x80000000
jne 0x4611e3
mov ecx, dword [esp + 0x74]
sub ecx, edi
mov dword [0x6a0cc8], ecx
cmp eax, 0x80000000
jne 0x4611f6
mov edx, dword [esp + 0x78]
sub edx, ebp
mov dword [0x6a0ccc], edx
mov eax, dword [esi]
push eax
call fcn.0058ee70
add esp, 4
test eax, eax
jne 0x46121e
mov ecx, dword [0x6a0f40]
push 0x6a0cc4
push 0x6a0cc0
push ecx
call fcn.00508a10
add esp, 0xc
mov edi, dword [esp + 0x18]
test edi, edi
je 0x461282
push 0x66
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x461282
mov eax, dword [esi]
push 0
lea edx, [esp + 0x2c]
push edx
push eax
call fcn.00591060
mov edx, dword [esi]
lea ecx, [esp + 0x4c]
push ecx
push edx
call fcn.00591190
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x5c]
mov ebp, dword [0x6a0cc8]
mov edx, dword [esp + 0x48]
sub eax, ecx
mov ecx, dword [esp + 0x60]
add ebp, eax
mov eax, dword [0x6a0ccc]
sub ecx, edx
add esp, 0x14
add eax, ecx
mov dword [0x6a0cc8], ebp
mov dword [0x6a0ccc], eax
mov eax, dword [0x6a0cc0]
mov edx, dword [0x6a0cc8]
mov ecx, dword [0x6a0cc4]
add edx, eax
mov dword [esp + 0x6c], eax
mov eax, dword [0x6a0ccc]
add eax, ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], eax
mov eax, dword [esi + 0x1904]
test eax, eax
jne 0x4612d6
mov ecx, dword [esi]
push ecx
call fcn.0058ee70
add esp, 4
test eax, eax
je 0x4612d6
mov edx, dword [esi]
push edx
call ebx
test eax, eax
je 0x4612d6
mov dword [esp + 0x58], 0
mov ecx, dword [esi]
lea eax, [esp + 0x50]
push eax
push ecx
call dword [sym.imp.USER32.dll_SetWindowPlacement]
jmp 0x4612ea
mov edi, dword [esp + 0x18]
test edi, edi
je 0x461442
mov edx, dword [esp + 0x18]
push 0x72
push edx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x461316
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
push 8
push ecx
call fcn.004a8560
add esp, 8
mov eax, dword [esp + 0x18]
test eax, eax
je 0x461442
mov edi, eax
push 0x6f
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46133e
mov esi, dword [esp + 0x10]
mov edx, dword [esi]
push 1
push edx
jmp 0x461356
push 0x75
push edi
call fcn.005d9b20
mov esi, dword [esp + 0x18]
add esp, 8
test eax, eax
je 0x46135e
mov eax, dword [esi]
push 0
push eax
call fcn.0058eea0
add esp, 8
push 0x76
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x461379
mov ecx, dword [0x6a0d24]
mov dword [esi + 0x1e94], ecx
push 0x7a
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4613f9
mov eax, dword [esi + 0x1314]
test eax, eax
je 0x4613f9
mov eax, dword [esi + 0x18e0]
test eax, eax
mov ecx, dword [0x6a0d28]
je 0x4613cd
test ecx, ecx
jne 0x4613c9
mov dword [esi + 0x18e0], ecx
mov edx, dword [0x6a0f38]
push edx
call fcn.00554f60
mov dword [0x6a0f38], eax
mov eax, dword [esp + 0x18]
add esp, 4
or eax, 1
jmp 0x4613f5
test eax, eax
jne 0x4613f9
test ecx, ecx
je 0x4613f9
mov ebx, 1
mov dword [esi + 0x18e0], ebx
mov eax, dword [0x6a0f38]
push eax
call fcn.00554f60
mov dword [0x6a0f38], eax
mov eax, dword [esp + 0x18]
add esp, 4
or eax, ebx
mov dword [esp + 0x14], eax
push 0x61
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x46140c
push 1
jmp 0x461437
push 0x6f
push edi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x461442
mov esi, dword [esp + 0x10]
mov edx, dword [esi]
push edx
call fcn.0058ee70
add esp, 4
test eax, eax
je 0x461435
mov eax, dword [esi]
push 1
push eax
jmp 0x46143a
push 4
mov ecx, dword [esi]
push ecx
call fcn.004a8560
add esp, 8
mov eax, dword [esp + 0x24]
test eax, eax
je 0x461451
push eax
call dword [sym.imp.USER32.dll_DestroyIcon]
mov al, byte [esp + 0x14]
test al, 1
je 0x46145d
push 0
jmp 0x461466
test al, 2
je 0x46146e
mov edx, dword [esp + 0x10]
push edx
call fcn.0055f1c0
add esp, 4
mov eax, dword [esp + 0x10]
push 1
push eax
call fcn.0057cb80
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1a0
ret