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

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xfffffff8
mov edi, edx
mov ebp, eax
xor ebx, ebx
test edi, edi
je 0x522763
mov eax, dword [ebp]
cmp eax, 0x210
jg 0x521ae6
je 0x521d17
cmp eax, 8
jg 0x521ac8
je 0x521ee2
sub eax, 3
je 0x5226fa
sub eax, 2
je 0x522520
sub eax, 2
je 0x521d58
jmp 0x522763
sub eax, 0x1d
je 0x52207d
sub eax, 0x5e
je 0x521b8c
sub eax, 0xad
je 0x521b3a
jmp 0x522763
cmp eax, 0xb013
jg 0x521b11
je 0x5220bd
sub eax, 0xa100
je 0x521b2a
sub eax, 0xf0b
je 0x521bd6
dec eax
je 0x52207d
jmp 0x522763
sub eax, 0xb014
je 0x52234e
sub eax, 5
je 0x521cf6
jmp 0x522763
mov eax, ebp
mov edx, edi
call fcn.00520fec
mov ebx, eax
jmp 0x522763
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x521b4e
mov bl, 1
jmp 0x522763
call fcn.00434454
test al, al
je 0x522763
mov eax, dword [edi + 0x44]
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x522763
push 0
push 0
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
mov eax, dword [0x5af254]
mov eax, dword [eax]
call eax
jmp 0x522763
mov eax, dword [edi + 0x44]
test eax, eax
je 0x522763
cmp dword [eax + 0x7c], 0
je 0x522763
mov eax, edi
call fcn.00520478
test eax, eax
je 0x522763
mov eax, edi
call fcn.00520478
mov al, byte [eax + 0x3c]
push eax
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x44]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x7c]
pop ecx
call fcn.0051cb3c
jmp 0x522763
mov eax, edi
call fcn.00520478
test eax, eax
je 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0xc4]
cmp byte [eax + 0xd], 1
jne 0x522763
cmp dword [edi + 0x44], 0
je 0x522763
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 8
jne 0x522763
cmp dword [edi + 0x4c], 0
je 0x522763
cmp dword [ebp + 4], 0
jne 0x521ce6
xor edx, edx
mov eax, dword [edi + 0x4c]
mov ecx, dword [eax]
call dword [ecx + 0x40]
xor edx, edx
mov eax, dword [edi + 0x4c]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x521cea
mov eax, esi
mov edx, dword [0x466f24]
call fcn.00403820
mov ebp, eax
mov eax, ebp
call fcn.0046e83c
dec eax
test eax, eax
jl 0x521cea
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov edx, esi
mov eax, ebp
call fcn.0046e800
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x521cbb
mov edx, esi
mov eax, ebp
call fcn.0046e800
call fcn.00471e10
test al, al
je 0x521cbb
mov edx, esi
mov eax, ebp
call fcn.0046e800
call fcn.00471b0c
xor ecx, ecx
mov edx, 0x21
call fcn.00517870
jmp 0x521cdd
push 0
mov dx, 0x21
xor eax, eax
call fcn.00407d54
push eax
mov edx, esi
mov eax, ebp
call fcn.0046e800
mov edx, 0xa100
pop ecx
call fcn.0046c3c4
inc esi
dec dword [esp + 4]
jne 0x521c75
jmp 0x521cea
mov byte [edi + 0x28], 0
mov byte [edi + 0x80], 1
jmp 0x522763
mov eax, dword [edi + 0x44]
test eax, eax
je 0x522763
cmp byte [eax + 0x57], 0
je 0x522763
mov eax, edi
call fcn.0052061c
jmp 0x522763
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x522763
mov eax, dword [ebp + 4]
and eax, 0xffff
dec eax
sub eax, 2
jae 0x522763
cmp word [ebp + 4], 1
jne 0x522763
mov eax, esi
call fcn.00512c14
jmp 0x522763
mov eax, dword [edi + 0x44]
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x522763
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x522763
mov eax, dword [edi + 0x44]
mov si, 0xffb8
call fcn.0040386c
test al, al
je 0x522763
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x1a4], 0
je 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x521dd7
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x522763
mov byte [edi + 0x80], 1
mov byte [edi + 0x54], 1
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x521df3
bt dword [0x5ab3f8], eax
jae 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 8], 1
jle 0x522763
mov byte [edi + 0x80], 1
mov byte [esp], 0
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x44]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x521e64
cmp byte [edi + 0xd], 0
jne 0x521e64
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x44]
mov eax, dword [edi + 0x44]
call fcn.0046b360
mov byte [esp], 1
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x48]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x521eae
cmp byte [edi + 0xc], 0
jne 0x521eae
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x48]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.004290fc
mov byte [esp], 1
cmp byte [esp], 0
je 0x521ec6
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_SendMessageA
jmp 0x522763
cmp dword [edi + 0x44], 0
je 0x522763
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x522763
mov eax, dword [edi + 0x44]
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x522763
mov eax, dword [edi + 0x44]
mov si, 0xffb8
call fcn.0040386c
test al, al
je 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x521f5b
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x522763
mov byte [edi + 0x80], 1
mov byte [edi + 0x54], 0
mov byte [esp], 0
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x521f7b
bt dword [0x5ab3f8], eax
jae 0x52201e
mov eax, edi
call fcn.00520108
test al, al
jne 0x52201e
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0xc]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x521fd4
cmp byte [edi + 0xd], 0
jne 0x521fd4
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0xc]
mov eax, dword [edi + 0x44]
call fcn.0046b360
mov byte [esp], 1
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x10]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x52201e
cmp byte [edi + 0xc], 0
jne 0x52201e
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x10]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.004290fc
mov byte [esp], 1
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x57], 0
je 0x522763
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x52203c
bt dword [0x5ab3f8], eax
jae 0x522763
mov byte [edi + 0x80], 1
cmp byte [esp], 0
je 0x522061
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_SendMessageA
jmp 0x522763
mov byte [edi + 0x55], 0
mov byte [edi + 0x54], 0
mov esi, dword [edi + 0x44]
test esi, esi
je 0x522763
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
jne 0x522763
cmp dword [edi + 0x24], 0xffffffff
je 0x522763
lea eax, [edi + 0x24]
call fcn.004d3544
mov dword [edi + 0x24], 0xffffffff
jmp 0x522763
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 0x10
jne 0x522763
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0xc4]
mov edx, 1
call fcn.0056b0d4
test al, al
jne 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x52212e
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x522763
mov esi, dword [edi + 0x44]
test esi, esi
je 0x52232e
mov eax, esi
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x52232e
cmp dword [0x5b13fc], 0
je 0x52232e
mov eax, esi
call fcn.0046e83c
dec eax
test eax, eax
jl 0x5221da
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.0046e800
mov edx, dword [0x4f7ec8]
call fcn.004037fc
test al, al
je 0x5221d3
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.0046e800
cmp eax, dword [edi + 0x44]
je 0x5221d3
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.0046e800
cmp eax, dword [ebp + 8]
je 0x5221d3
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.0046e800
mov eax, dword [eax + 0x198]
cmp byte [eax + 0x55], 0
je 0x5221d3
push 0
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.0046e800
xor ecx, ecx
mov edx, 0xb014
call fcn.0046c3c4
inc esi
dec dword [esp + 4]
jne 0x52216e
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x5221eb
bt dword [0x5ab3b8], eax
jb 0x5221f1
mov byte [edi + 0x55], 1
mov eax, dword [edi + 0x44]
call fcn.00471b0c
mov edx, eax
mov eax, dword [0x5b13fc]
call fcn.00569958
mov eax, dword [edi + 0x50]
mov edx, eax
cmp edx, 0xff
ja 0x522219
bt dword [0x5ab3d8], edx
jb 0x52222e
add eax, 0xffffffa4
sub eax, 3
jb 0x52222e
xor ecx, ecx
xor edx, edx
mov eax, edi
call fcn.0051f30c
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x52223f
bt dword [0x5ab3f8], eax
jae 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 8], 1
jle 0x522763
mov byte [edi + 0x80], 1
mov byte [esp], 0
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x44]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x5222b0
cmp byte [edi + 0xd], 0
jne 0x5222b0
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x44]
mov eax, dword [edi + 0x44]
call fcn.0046b360
mov byte [esp], 1
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x48]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x5222fa
cmp byte [edi + 0xc], 0
jne 0x5222fa
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x48]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.004290fc
mov byte [esp], 1
cmp byte [esp], 0
je 0x522312
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_SendMessageA
jmp 0x522763
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x52233f
bt dword [0x5ab3b8], eax
jb 0x522763
mov byte [edi + 0x55], 1
jmp 0x522763
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 0x10
jne 0x522763
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x522763
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0xc4]
mov edx, 1
call fcn.0056b0d4
test al, al
jne 0x522763
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x52239c
bt dword [0x5ab3b8], eax
jb 0x5223a2
mov byte [edi + 0x55], 0
mov eax, dword [edi + 0x50]
mov edx, eax
cmp edx, 0xff
ja 0x5223b6
bt dword [0x5ab3d8], edx
jb 0x5223d5
add eax, 0xffffffa4
sub eax, 3
jb 0x5223d5
cmp dword [edi + 0x24], 0xffffffff
je 0x5223d5
lea eax, [edi + 0x24]
call fcn.004d3544
mov dword [edi + 0x24], 0xffffffff
mov byte [esp], 0
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x5223ea
bt dword [0x5ab3f8], eax
jae 0x5224c1
mov eax, edi
call fcn.00520108
test al, al
jne 0x5224c1
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x522433
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x5224c1
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0xc]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x522477
cmp byte [edi + 0xd], 0
jne 0x522477
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0xc]
mov eax, dword [edi + 0x44]
call fcn.0046b360
mov byte [esp], 1
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x10]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x5224c1
cmp byte [edi + 0xc], 0
jne 0x5224c1
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x10]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.004290fc
mov byte [esp], 1
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x57], 0
je 0x522763
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x5224df
bt dword [0x5ab3f8], eax
jae 0x522763
mov byte [edi + 0x80], 1
cmp byte [esp], 0
je 0x522504
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00471b0c
push eax
call sub.user32.dll_SendMessageA
jmp 0x522763
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x522763
mov byte [edi + 0x80], 1
mov eax, dword [edi + 0x14]
mov al, byte [eax + 8]
sub al, 1
jne 0x522549
mov eax, edi
call fcn.0051f950
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x4fc230]
call fcn.004037fc
test al, al
je 0x522632
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x5226e3
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
call fcn.00405b40
cmp eax, dword [edi + 0x34]
jle 0x5226e3
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x24], 0
jle 0x5226e3
mov eax, dword [edi + 0x44]
call fcn.004fd8cc
test eax, eax
je 0x5226e3
mov eax, dword [edi + 0x44]
call fcn.004fd8cc
call fcn.0046e83c
dec eax
test eax, eax
jl 0x5226e3
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov eax, dword [edi + 0x44]
call fcn.004fd8cc
call fcn.0046e83c
cmp esi, eax
jge 0x522626
mov eax, dword [edi + 0x44]
call fcn.004fd8cc
mov edx, esi
call fcn.0046e800
test byte [eax + 0x1c], 8
jne 0x522626
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407d54
push eax
mov eax, dword [edi + 0x44]
call fcn.004fd8cc
mov edx, esi
call fcn.0046e800
mov edx, 0xa100
pop ecx
call fcn.0046c3c4
inc esi
dec dword [esp + 4]
jne 0x5225d6
jmp 0x5226e3
mov eax, esi
mov edx, dword [0x466f24]
call fcn.004037fc
test al, al
je 0x5226e3
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x5226e3
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
call fcn.00405b40
cmp eax, dword [edi + 0x34]
jle 0x5226e3
mov eax, edi
call fcn.00520478
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x24], 0
jle 0x5226e3
mov eax, dword [edi + 0x44]
call fcn.0046e83c
dec eax
test eax, eax
jl 0x5226e3
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov eax, dword [edi + 0x44]
call fcn.0046e83c
cmp esi, eax
jge 0x5226dc
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.0046e800
test byte [eax + 0x1c], 8
jne 0x5226dc
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407d54
push eax
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.0046e800
mov edx, 0xa100
pop ecx
call fcn.0046c3c4
inc esi
dec dword [esp + 4]
jne 0x52269b
cmp dword [edi + 0x24], 0xffffffff
je 0x522763
lea eax, [edi + 0x24]
call fcn.004d3544
mov dword [edi + 0x24], 0xffffffff
jmp 0x522763
xor edx, edx
mov eax, edi
call fcn.00520f48
test al, al
je 0x522763
mov eax, dword [edi + 0x14]
mov al, byte [eax + 8]
sub al, 1
jne 0x522718
mov eax, edi
call fcn.0051f950
mov eax, edi
call fcn.00520b60
test al, al
je 0x52274e
mov byte [edi + 0x80], 1
mov esi, dword [edi + 0x44]
test esi, esi
je 0x52274e
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407d54
mov ecx, eax
mov edx, 0xa100
mov eax, esi
call fcn.0046c3c4
cmp dword [edi + 0x24], 0xffffffff
je 0x522763
lea eax, [edi + 0x24]
call fcn.004d3544
mov dword [edi + 0x24], 0xffffffff
mov eax, ebx
pop ecx
pop edx
pop ebp
pop edi
pop esi
pop ebx
ret