Function at 0x4af7e6
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0x90
mov eax, 0x55e938
call fcn.0053852c
mov ebx, ecx
mov dword [ebp - 0x18], ebx
xor edi, edi
cmp dword [ebx + 0x15c], edi
jne 0x4b00b7
cmp dword [ebx + 0x160], edi
jne 0x4b00b7
cmp dword [ebx + 0x64], edi
jne 0x4af83a
cmp dword [ebx + 0x9c], edi
jne 0x4af83a
cmp dword [ebx + 0x80], edi
jne 0x4af83a
cmp dword [ebx + 0xb8], edi
jne 0x4af83a
cmp dword [ebx + 0x2c], edi
je 0x4b00b7
xor eax, eax
lea ecx, [ebp - 0x9c]
inc eax
push 0xa
mov dword [0x5bf870], eax
mov dword [0x5bf878], eax
call fcn.004379c6
mov eax, dword [ebx + 0x40]
mov dword [ebp - 4], edi
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4af8bb
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0x3c]
call fcn.0043c885
push dword [eax]
push 0x5860d8
call fcn.00429ca4
pop ecx
pop ecx
test eax, eax
je 0x4af8b5
mov ecx, eax
call fcn.0051bbe0
push eax
push 0x5b6a3c
call fcn.00429ca4
pop ecx
pop ecx
test eax, eax
je 0x4af8b5
mov ecx, dword [eax + 0x330]
test ecx, ecx
je 0x4af8b5
cmp dword [ecx + 0x114], edi
je 0x4af8b5
push eax
lea ecx, [ebp - 0x9c]
call fcn.00423023
cmp dword [ebp - 0x10], 0
jne 0x4af861
mov esi, dword [ebp - 0x98]
jmp 0x4af8f1
mov eax, esi
test esi, esi
je 0x4af952
push dword [eax + 8]
mov esi, dword [esi]
push 0x5b6a3c
call fcn.00429ca4
pop ecx
pop ecx
push 1
mov edx, dword [eax]
mov ecx, eax
push edi
push 0xf000
push edi
call dword [edx + 0x368]
test esi, esi
jne 0x4af8c3
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4af930
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0x58]
call fcn.0043c885
push dword [eax]
push 0x5b6a3c
call fcn.00429ca4
pop ecx
pop ecx
test eax, eax
je 0x4af92a
push dword [eax + 0x354]
mov ecx, eax
call fcn.004efa32
cmp dword [ebp - 0x10], 0
jne 0x4af8ff
push 0xa
lea ecx, [ebp - 0x80]
call fcn.004379c6
lea eax, [ebx + 0x90]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x80]
call fcn.00437a8e
mov edi, dword [ebp - 0x7c]
jmp 0x4af98b
call fcn.0041825b
mov eax, edi
test edi, edi
je 0x4af952
push dword [eax + 8]
mov edi, dword [edi]
push 0x5b677c
call fcn.00429ca4
pop ecx
pop ecx
push 0x37
mov esi, eax
xor eax, eax
push eax
push eax
push eax
push eax
push eax
mov ecx, esi
call fcn.004172a8
mov edx, dword [esi]
mov ecx, esi
push ebx
call dword [edx + 0x1dc]
test edi, edi
jne 0x4af957
push 0xa
lea ecx, [ebp - 0x48]
call fcn.004379c6
mov eax, dword [ebx + 0x24]
mov byte [ebp - 4], 2
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4afa7f
lea eax, [ebx + 0x20]
mov ebx, eax
lea eax, [ebp - 0x10]
mov ecx, ebx
push eax
call fcn.0043c885
push 0x57a8d0
mov esi, dword [eax]
mov ecx, esi
mov dword [ebp - 0x14], esi
call fcn.00429d3a
test eax, eax
je 0x4af9f0
push esi
push 0x57a8d0
call fcn.00429ca4
pop ecx
pop ecx
add eax, 0x110
lea ecx, [ebp - 0x48]
push eax
call fcn.00437a8e
jmp 0x4afa72
push 0x56ef3c
mov ecx, esi
call fcn.00429d3a
test eax, eax
je 0x4afa72
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1cc]
test eax, eax
je 0x4afa19
push esi
lea ecx, [ebp - 0x48]
call fcn.00423023
jmp 0x4afa72
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1b0]
test eax, eax
je 0x4afa72
add esi, 0x298
lea edi, [ebp - 0x2c]
push 0
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x14]
mov ecx, edi
push eax
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
mov edx, dword [edi]
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push 0
call dword [edx + 0x238]
mov esi, dword [edi]
mov ecx, edi
push 0
push 1
call dword [esi + 0x1ac]
push eax
mov ecx, edi
call dword [esi + 0x224]
cmp dword [ebp - 0x10], 0
jne 0x4af9b0
mov ebx, dword [ebp - 0x18]
mov eax, dword [ebx + 0xcc]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4afad7
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0xc8]
call fcn.0043c885
push dword [eax]
push 0x5b677c
call fcn.00429ca4
pop ecx
pop ecx
test eax, eax
je 0x4afad1
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1a8]
push eax
push 0x56fadc
call fcn.00429ca4
pop ecx
pop ecx
test eax, eax
je 0x4afad1
push eax
lea ecx, [ebp - 0x48]
call fcn.00423023
cmp dword [ebp - 0x10], 0
jne 0x4afa8c
mov esi, dword [ebp - 0x44]
test esi, esi
je 0x4afb82
mov edi, esi
test esi, esi
je 0x4af952
mov edi, dword [edi + 8]
mov ecx, edi
mov esi, dword [esi]
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], edi
mov eax, dword [edi]
call dword [eax + 0x1b0]
test eax, eax
je 0x4afb36
push 0x579bc8
mov ecx, edi
call fcn.00429d3a
test eax, eax
jne 0x4afb36
mov eax, dword [edi]
lea esi, [edi + 0x1e8]
mov ecx, dword [ebp - 0x18]
push 0
push 3
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x1fc]
mov esi, dword [ebp - 0x14]
test esi, esi
jne 0x4afae2
mov esi, dword [ebp - 0x44]
jmp 0x4afb7e
mov edi, esi
test esi, esi
je 0x4af952
mov edi, dword [edi + 8]
mov ecx, edi
mov esi, dword [esi]
mov eax, dword [edi]
call dword [eax + 0x1b0]
test eax, eax
je 0x4afb7e
push 0x5b6a3c
mov ecx, edi
call fcn.00429d3a
test eax, eax
jne 0x4afb7e
mov eax, dword [edi]
mov ecx, edi
push ebx
call dword [eax + 0x2b8]
mov ecx, edi
call fcn.0045684c
test esi, esi
jne 0x4afb3f
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4afe04
lea eax, [ebx + 0x58]
lea ecx, [ebp - 0x10]
push ecx
mov ecx, eax
call fcn.0043c885
mov edi, dword [eax]
mov ecx, edi
mov eax, dword [edi]
call dword [eax + 0x16c]
test eax, eax
je 0x4afc0b
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.00411555
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.00411555
push dword [ebx + 0xe4]
mov ecx, edi
mov esi, eax
call fcn.0045660e
mov edx, dword [esi]
mov ecx, esi
push edi
call dword [edx + 0x3c0]
push 0x5b6a3c
mov ecx, edi
call fcn.00429d3a
test eax, eax
je 0x4afc02
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 0x1f0]
push 5
mov ecx, edi
call fcn.00417328
mov eax, dword [edi]
xor esi, esi
push esi
mov ecx, edi
call dword [eax + 0x228]
test eax, eax
je 0x4afc29
mov edx, dword [eax]
mov ecx, eax
push esi
push esi
push edi
call dword [edx + 0x17c]
push dword [ebx + 0xe4]
mov ecx, edi
call fcn.0045660e
mov esi, 0x5b6a3c
mov ecx, edi
push esi
call fcn.00429d3a
test eax, eax
je 0x4afdf7
push edi
push esi
call fcn.00429ca4
lea edi, [ebp - 0x2c]
mov dword [ebp - 0x18], eax
pop ecx
pop ecx
lea esi, [eax + 0x298]
movsd dword es:[edi], dword [esi]
push 0
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, eax
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
mov ecx, edi
push eax
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
mov edx, dword [edi]
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push 0
call dword [edx + 0x238]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x1ac]
xor ecx, ecx
mov dword [ebp - 0x18], eax
test eax, eax
setne cl
push ecx
mov ecx, edi
call fcn.00417328
mov ecx, edi
call fcn.004ed4c5
mov esi, eax
mov dword [ebp - 0x14], esi
test esi, esi
je 0x4afcdc
mov esi, dword [edi]
mov ecx, eax
mov edx, dword [ecx]
call dword [edx + 0x194]
push eax
mov ecx, edi
call dword [esi + 0x1e0]
mov esi, dword [ebp - 0x14]
mov ecx, esi
push dword [ebp - 0x18]
push edi
mov eax, dword [esi]
call dword [eax + 0x294]
push 0x579bc8
mov ecx, edi
call fcn.00429d3a
test eax, eax
je 0x4afdf7
and dword [ebp - 0x18], 0
test esi, esi
je 0x4afdf7
lea eax, [ebp - 0x18]
mov ecx, esi
push eax
push edi
call fcn.0051bbb5
push edi
mov ecx, eax
call fcn.0051954c
test eax, eax
je 0x4afdd3
mov ecx, dword [eax + 4]
jmp 0x4afdcb
mov edx, dword [ebx]
lea eax, [ecx]
mov ecx, dword [ecx]
push 1
push dword [eax + 8]
mov dword [ebp - 0x1c], ecx
mov ecx, ebx
call dword [edx + 0x24]
push eax
push 0x5b6a3c
call fcn.00429ca4
mov esi, eax
mov dword [ebp - 0x14], esi
pop ecx
pop ecx
test esi, esi
je 0x4afdc8
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x16c]
test eax, eax
je 0x4afd95
push dword [esi + 0x20]
mov esi, dword [sym.imp.USER32.dll_GetParent]
call esi
push eax
call fcn.00411555
push dword [eax + 0x20]
call esi
push eax
call fcn.00411555
push dword [ebx + 0xe4]
mov ecx, dword [ebp - 0x14]
mov esi, eax
call fcn.0045660e
mov edx, dword [esi]
mov ecx, esi
push dword [ebp - 0x14]
call dword [edx + 0x3c0]
mov esi, dword [ebp - 0x14]
jmp 0x4afdb8
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1dc]
test eax, eax
je 0x4afdb8
mov eax, dword [esi]
mov ecx, esi
push 1
push 0
push 0xf000
push 0
call dword [eax + 0x368]
mov eax, dword [esi]
xor ecx, ecx
push ecx
push ecx
push ecx
push edi
mov ecx, esi
call dword [eax + 0x34c]
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
jne 0x4afd20
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x3a4]
test eax, eax
je 0x4afdf7
mov eax, dword [edi]
mov ecx, edi
push 0
call dword [eax + 0x3d4]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x210]
cmp dword [ebp - 0x10], 0
lea eax, [ebx + 0x58]
jne 0x4afb93
lea ecx, [ebx + 0x58]
push ecx
lea ecx, [ebx + 0x20]
call fcn.00437a8e
and dword [0x5bf878], 0
mov ecx, ebx
mov eax, dword [ebx]
push 0
call dword [eax + 0x38]
mov eax, dword [ebx + 0xb0]
jmp 0x4aff5b
mov esi, eax
mov ecx, ebx
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx]
push 1
push dword [esi + 8]
mov dword [ebp - 0x1c], esi
call dword [eax + 0x24]
push eax
push 0x5b6a3c
call fcn.00429ca4
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x4aff58
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x170]
test eax, eax
mov eax, dword [edi]
jne 0x4afedc
mov ecx, edi
call dword [eax + 0x1dc]
test eax, eax
mov ecx, edi
mov eax, dword [edi]
je 0x4afe8b
push 1
push 0
push 0xf000
push 0
call dword [eax + 0x368]
jmp 0x4afef0
call dword [eax + 0x16c]
test eax, eax
je 0x4afeda
push dword [edi + 0x20]
mov esi, dword [sym.imp.USER32.dll_GetParent]
call esi
push eax
call fcn.00411555
push dword [eax + 0x20]
call esi
push eax
call fcn.00411555
push dword [ebx + 0xe4]
mov ecx, edi
mov esi, eax
call fcn.0045660e
mov edx, dword [esi]
mov ecx, esi
push edi
call dword [edx + 0x3c0]
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 0x1f0]
mov esi, dword [ebp - 0x1c]
mov eax, dword [edi]
xor ecx, ecx
push ecx
push 0xffffffffffffffff
push ecx
push 1
push ecx
push dword [esi + 0xc]
mov ecx, edi
call dword [eax + 0x200]
mov eax, dword [esi + 0x20]
mov ecx, edi
sub eax, dword [esi + 0x18]
mov edx, dword [edi]
push 0
push 0x14
push eax
mov eax, dword [esi + 0x1c]
sub eax, dword [esi + 0x14]
push eax
push dword [esi + 0x18]
push dword [esi + 0x14]
push 0
call dword [edx + 0x238]
mov eax, dword [edi]
mov ecx, edi
push 0
push 0
push dword [esi + 0xc]
push 1
call dword [eax + 0x368]
test eax, eax
je 0x4aff58
mov ecx, dword [esi + 0x48]
mov dword [eax + 0x11c], ecx
mov ecx, dword [esi + 0x40]
mov dword [eax + 0x114], ecx
mov ecx, dword [esi + 0x44]
mov dword [eax + 0x118], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x4c], edi
mov eax, dword [edi + 0x330]
mov dword [eax + 0x84], ecx
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x4afe2b
mov esi, dword [ebx + 0xb0]
jmp 0x4aff94
lea edi, [esi]
mov esi, dword [esi]
mov ecx, dword [edi + 0x4c]
test ecx, ecx
je 0x4aff94
mov eax, dword [ecx]
call dword [eax + 0x36c]
test eax, eax
je 0x4aff94
mov ecx, dword [edi + 0x4c]
push 0
push 0
push dword [edi + 0x10]
mov eax, dword [ecx]
call dword [eax + 0x224]
test esi, esi
jne 0x4aff6b
mov eax, dword [ebx + 0x78]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4affd2
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0x74]
call fcn.0043c885
push dword [eax]
push 0x579bc8
call fcn.00429ca4
pop ecx
pop ecx
test eax, eax
je 0x4affcc
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x3d4]
cmp dword [ebp - 0x10], 0
jne 0x4affa2
push 0xa
lea ecx, [ebp - 0x64]
call fcn.004379c6
lea eax, [ebx + 0x20]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x64]
call fcn.00437a8e
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4b0069
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x64]
call fcn.00416d3a
mov esi, dword [eax]
push esi
push 0x5860d8
call fcn.00429ca4
pop ecx
pop ecx
test eax, eax
je 0x4b0021
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x2a0]
jmp 0x4b0063
push esi
push 0x579bc8
call fcn.00429ca4
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4b0063
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x3a4]
test eax, eax
jne 0x4b0063
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1cc]
test eax, eax
je 0x4b0063
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax + 0x240]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x60]
cmp dword [ebp - 0x10], 0
jne 0x4afff6
mov eax, dword [ebx]
mov ecx, ebx
push 1
call dword [eax + 0x34]
lea ecx, [ebx + 0x58]
call fcn.00437b70
lea ecx, [ebx + 0x90]
call fcn.00437b70
lea ecx, [ebx + 0x74]
call fcn.00437b70
and dword [0x5bf870], 0
lea ecx, [ebp - 0x64]
call fcn.004379ec
lea ecx, [ebp - 0x48]
call fcn.004379ec
lea ecx, [ebp - 0x80]
call fcn.004379ec
lea ecx, [ebp - 0x9c]
call fcn.004379ec
call fcn.005384f5
ret