Function at 0x52b48c
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push edi
push esi
push ebp
push ebx
push ecx
mov eax, 0x3d0
call fcn.00602270
mov ecx, dword [esp + 0x3d0]
mov ebp, ecx
mov ebx, dword [esp + 0x3e8]
mov edi, dword [0x6610b8]
mov esi, edi
mov eax, dword [0x6610b4]
mov dword [esp + 8], eax
xor eax, eax
mov al, byte [ebp + 9]
and eax, 8
test eax, 0xfffffff8
je 0x52b4d5
cmp ebx, ebp
je 0x52b95a
jmp 0x52b4dd
cmp ebx, ebp
je 0x52ba8f
mov ecx, dword [ebx + 0x46]
mov dword [ebp + 0x46], ecx
xor eax, eax
rep stosd dword es:[edi], eax
mov dword [0x6610b4], 0
mov edi, dword [ebp + 0x36]
mov ecx, dword [edi + 0x40]
test ecx, ecx
jle 0x52b5b5
mov eax, dword [edi + 0x3c]
cmp eax, 0x1047
je 0x52b9f8
cmp eax, 0x107c
je 0x52b9e8
test eax, eax
jle 0x52b9d8
movzx edx, word [edi + 0x14]
test edx, edx
jne 0x52b538
mov ecx, dword [ebp + 0xf]
call fcn.004ed484
mov edi, eax
test edi, edi
jne 0x52b54d
jmp 0x52b5b5
push 4
push ebx
push 0
push ebp
call fcn.00434660
mov edi, eax
test edi, edi
je 0x52b9c9
mov edx, dword [edi]
mov eax, dword [ebp + 0x36]
push ebp
push dword [eax + 0x3c]
mov ecx, edi
call dword [edx + 0x64]
mov ecx, eax
test ecx, ecx
je 0x52b5b5
mov eax, dword [ecx + 0x31]
mov edx, dword [ecx + 0x2d]
mov dword [ebp + 0x31], eax
mov dword [ebp + 0x2d], edx
call fcn.00502374
test eax, eax
je 0x52b5b5
mov dword [esp + 4], esi
mov esi, eax
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x78]
cmp eax, 0x17
je 0x52b9ac
mov eax, dword [esi]
push 0
push ebp
mov ecx, esi
call dword [eax + 0xb0]
push 1
push ebx
push eax
mov ecx, ebp
call fcn.0052ba98
mov ecx, esi
call fcn.004f0a0c
mov esi, eax
test esi, esi
jne 0x52b57c
mov esi, dword [esp + 4]
mov edi, dword [0x6610b8]
xor eax, eax
mov ecx, dword [ebp + 0x46]
rep stosd dword es:[edi], eax
mov dword [0x6610b4], 0
mov eax, dword [ebp + 0x36]
movzx ecx, word [eax]
test ecx, ecx
je 0x52b630
call fcn.0051c898
mov edi, eax
test edi, edi
je 0x52b630
mov dword [esp + 4], esi
mov ecx, 0x74c080
push 1
push 0x58
call fcn.004e2a04
mov esi, eax
test esi, esi
je 0x52b60c
movzx eax, word [edi]
push eax
mov ecx, esi
call fcn.00501858
mov dword [esi], 0x635220
jmp 0x52b60e
xor esi, esi
push 0
push ebx
push ebp
mov ecx, esi
call fcn.0052b2f8
test esi, esi
je 0x52b625
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
mov edi, dword [edi + 2]
test edi, edi
jne 0x52b5e5
mov esi, dword [esp + 4]
mov edi, dword [0x6610b8]
xor eax, eax
mov ecx, dword [ebp + 0x46]
rep stosd dword es:[edi], eax
mov dword [0x6610b4], 0
mov eax, dword [ebp + 0x36]
movzx ecx, word [eax + 2]
test ecx, ecx
je 0x52b6fe
call fcn.0051c898
mov edi, eax
test edi, edi
je 0x52b6fe
mov dword [esp + 4], esi
movzx eax, word [edi]
lea esi, [eax + eax]
add esi, esi
lea ecx, [esi + eax*8 + 0x690620]
lea eax, [esp + 0x10]
lea esi, [esp + 0xc]
push esi
push eax
push 0x3a
call fcn.0051ab7c
movzx eax, word [esp + 0x10]
lea esi, [eax + eax]
add esi, esi
mov ecx, dword [esi + eax*8 + 0x690628]
call fcn.004ee0dc
mov esi, eax
test esi, esi
je 0x52b6c0
movzx edx, word [esp + 0xc]
test edx, edx
je 0x52ba08
push ebp
push 0
mov ecx, esi
call fcn.00434550
mov esi, eax
jmp 0x52b6e0
mov ecx, 0x4a
call fcn.004dbd30
mov esi, eax
test esi, esi
je 0x52b6de
movzx eax, word [edi]
push ebp
push eax
mov ecx, esi
call fcn.0050273c
jmp 0x52b6e0
xor esi, esi
test esi, esi
je 0x52b6ef
push 1
push ebp
push esi
mov ecx, ebx
call fcn.0052ba98
mov edi, dword [edi + 2]
test edi, edi
jne 0x52b669
mov esi, dword [esp + 4]
mov edi, dword [0x6610b8]
xor eax, eax
mov ecx, dword [ebp + 0x46]
rep stosd dword es:[edi], eax
mov dword [0x6610b4], 0
mov eax, dword [ebp + 0x36]
movzx edi, word [eax + 6]
test edi, edi
je 0x52b728
push ebx
mov ecx, ebp
call fcn.0052df40
mov edi, dword [0x6610b8]
xor eax, eax
mov ecx, dword [ebp + 0x46]
rep stosd dword es:[edi], eax
mov dword [0x6610b4], 0
mov eax, dword [ebp + 0x36]
movzx edi, word [eax + 4]
test edi, edi
je 0x52b81d
call fcn.0051a4b8
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x18]
push 1
call fcn.004ff2a8
mov eax, dword [ebp + 0x36]
movzx ecx, word [eax + 4]
call fcn.0051c898
mov edi, eax
test edi, edi
je 0x52b80b
mov dword [esp + 4], esi
mov dword [esp], ebp
lea ecx, [esp + 0x14]
movzx edx, word [edi]
push 0x14
mov ebp, dword [esp + 0x3ec]
push ebp
mov ebx, dword [esp + 8]
push ebx
push edx
call fcn.0051b1c4
mov ebp, eax
and ebp, 0xffff
lea ebx, [ebp + ebp]
add ebx, ebx
lea ecx, [esp + 0x18]
push dword [ebx + ebp*8 + 0x690628]
push 1
call fcn.004ffcbc
mov ecx, 0x52
call fcn.004dbd30
mov esi, eax
test esi, esi
je 0x52b7e0
lea edx, [esp + 0x18]
push edx
push dword [ebx + ebp*8 + 0x690628]
mov ecx, esi
call fcn.00532080
jmp 0x52b7e2
xor esi, esi
push 1
mov edx, dword [esp + 4]
push edx
push esi
mov ecx, dword [esp + 0x3f4]
call fcn.0052ba98
mov edi, dword [edi + 2]
test edi, edi
jne 0x52b77f
mov esi, dword [esp + 4]
mov ebx, dword [esp + 0x3e8]
mov ebp, dword [esp]
lea ecx, [esp + 0x18]
call fcn.00500418
mov ecx, dword [esp + 0x14]
call fcn.0051a4f8
mov edi, dword [0x6610b8]
xor eax, eax
mov ecx, dword [ebp + 0x46]
rep stosd dword es:[edi], eax
mov dword [0x6610b4], 0
mov eax, dword [ebp + 0x36]
movzx edi, word [eax + 0x2e]
test edi, edi
je 0x52b847
push ebx
mov ecx, ebp
call fcn.0052bce0
mov edi, dword [0x6610b8]
xor eax, eax
mov ecx, dword [ebp + 0x46]
rep stosd dword es:[edi], eax
mov dword [0x6610b4], 0
mov edi, dword [ebp + 0x36]
movzx eax, word [edi + 0x2a]
test eax, eax
jne 0x52b93d
movzx eax, word [edi + 0x26]
test eax, eax
jne 0x52b884
mov eax, dword [esp + 0x3ec]
test eax, eax
je 0x52b945
lea ecx, [esp + 0x24]
push ebp
call fcn.00580514
mov eax, dword [esp + 0x3ec]
test eax, eax
je 0x52ba1e
lea ecx, [esp + 0x24]
mov eax, dword [esp + 0x3ec]
push eax
call fcn.005805c8
lea ecx, [esp + 0x24]
call fcn.0058067c
test eax, eax
jne 0x52b8cc
lea eax, [esp + 0x37a]
push ebp
push ebx
push eax
mov ecx, ebp
call fcn.0052cf68
lea ecx, [esp + 0x3bc]
call fcn.004e7340
lea ecx, [esp + 0x3ac]
call fcn.004e7340
lea ecx, [esp + 0x39e]
call fcn.004e7340
lea ecx, [esp + 0x392]
call fcn.004e7340
lea ecx, [esp + 0x33c]
call fcn.00580c88
mov eax, 0x40
lea edi, [esp + 0x33c]
mov dword [esp], ebp
mov ebp, eax
add edi, 0xfffffff6
mov ecx, edi
call fcn.00500418
dec ebp
jne 0x52b919
mov ebp, dword [esp]
lea ecx, [esp + 0x32]
call fcn.00500418
lea ecx, [esp + 0x28]
call fcn.00500418
jmp 0x52b945
push ebx
mov ecx, ebp
call fcn.0052d910
cmp ebx, ebp
je 0x52ba68
add esp, 0x3d4
pop ebx
pop ebp
pop esi
pop edi
ret 8
mov dword [ebp + 0x46], 1
mov ecx, dword [ebp + 0x3a]
test ecx, ecx
jne 0x52b993
test ecx, ecx
je 0x52b972
movsx ecx, word [ecx + 0x3d]
jmp 0x52b977
mov ecx, 1
mov dword [ebp + 0x46], ecx
add ecx, ecx
add ecx, ecx
call fcn.004dbd30
mov edi, eax
mov dword [0x6610b8], edi
mov ecx, dword [ebp + 0x46]
jmp 0x52b4e3
mov eax, dword [ecx + 0xa7]
test eax, eax
jg 0x52b968
mov eax, dword [ecx]
call dword [eax + 0x54]
cmp eax, 0xfffffffc
je 0x52b94d
mov ecx, dword [ebp + 0x3a]
jmp 0x52b968
mov eax, dword [esi]
push 0
push edi
mov ecx, esi
call dword [eax + 0xb0]
push 1
push ebx
push eax
mov ecx, ebp
call fcn.0052ba98
jmp 0x52b5a4
mov ecx, dword [ebp + 0xf]
call fcn.004ed484
mov edi, eax
jmp 0x52b532
push dword [ebp + 0x3a]
push ebx
mov edx, ebp
call fcn.00432f50
jmp 0x52b5b5
push dword [ebp + 0x3a]
push ebx
mov edx, ebp
call fcn.00432600
jmp 0x52b5b5
push dword [ebp + 0x3a]
push ebx
mov edx, ebp
call fcn.00433580
jmp 0x52b5b5
push 0x74f4e0
mov ecx, ebp
call fcn.004f0a94
movzx edx, word [esp + 0xc]
jmp 0x52b6b2
call fcn.0051a4b8
mov edi, eax
mov eax, dword [ebp + 0x36]
movzx eax, word [eax + 0x26]
push 4
push ebx
push 0
push ebp
push 1
push eax
mov ecx, edi
call fcn.0051be44
test eax, eax
jne 0x52ba4e
lea ecx, [esp + 0x24]
push dword [edi + 0x38]
call fcn.005805c8
jmp 0x52ba5c
lea ecx, [esp + 0x24]
push 0x74e42c
call fcn.005805c8
mov ecx, edi
call fcn.0051a4f8
jmp 0x52b8ae
mov ecx, dword [0x6610b8]
call fcn.004dbbc0
mov dword [0x6610b8], esi
mov eax, dword [esp + 8]
mov dword [0x6610b4], eax
add esp, 0x3d4
pop ebx
pop ebp
pop esi
pop edi
ret 8
mov ecx, dword [ebp + 0x3a]
jmp 0x52b968