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

Disassembly:
sub esp, 0x60
push ebp
mov ebp, dword [esp + 0x6c]
push ebp
call fcn.6d9dfb50
add esp, 4
cmp al, 2
jne 0x6d9e0418
push esi
push edi
push ebp
call fcn.6d9dfaf0
mov esi, eax
push esi
call fcn.6d9e0ca0
mov edi, eax
push edi
mov dword [esp + 0x2c], edi
call fcn.6d9d51d0
add esp, 0xc
test al, 0x40
jne 0x6d9e0416
push ebx
push 0x40
push edi
call fcn.6d9d51a0
push ebp
call fcn.6d9dfb20
cdq
xor ebx, ebx
push edi
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
mov dword [esp + 0x30], ebx
call fcn.6d9d56c0
add esp, 0x10
cmp eax, ebx
je 0x6d9e01b5
push eax
call fcn.6d9d56a0
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
je 0x6d9e01b5
push eax
call fcn.6d9dfca0
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x78]
push eax
push ecx
push edx
call 0x6d9e0120
add esp, 0x10
push esi
call fcn.6d9e0cd0
push eax
call fcn.6d9e4b40
push edi
mov dword [esp + 0x54], eax
call fcn.6d9d51f0
push eax
call fcn.6d9e1dd0
push edi
mov dword [esp + 0x54], eax
call fcn.6d9d5710
mov edx, dword [esp + 0x88]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x2c]
push ecx
push edi
push edx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x38], ebx
mov byte [esp + 0x37], bl
mov dword [esp + 0x3c], ebx
call fcn.6d9d5740
mov esi, dword [esp + 0xa0]
add esp, 0x24
cmp eax, 1
jne 0x6d9e0261
mov byte [esp + 0x13], al
test esi, esi
je 0x6d9e0261
mov eax, dword [0x6d9ee7f8]
test byte [eax + 0x60], 1
je 0x6d9e0246
mov eax, esi
call fcn.6d9dfe20
mov ecx, dword [esp + 0x40]
push ecx
push str.Unprepared_class_with_references:__s_n
call fcn.6d9d5d20
add esp, 8
push 0x184
push str.hprof_reference.c
push str.Trouble_with_unprepared_classes
push 0
push 0
call fcn.6d9d5d70
add esp, 0x14
mov eax, dword [esp + 0x14]
test eax, eax
jle 0x6d9e028f
lea edx, [eax*8]
push edx
call fcn.6d9e5d30
mov ebx, eax
mov eax, dword [esp + 0x18]
lea ecx, [eax*8]
push ecx
push 0
push ebx
call sub.msvcr100.dll_memset
add esp, 0x10
push 0x10
push 0x10
push 0x10
call fcn.6d9e1be0
mov dword [esp + 0x34], eax
xor eax, eax
add esp, 0xc
mov dword [esp + 0x34], eax
mov dword [esp + 0x1c], eax
cmp esi, eax
je 0x6d9e03ab
mov edx, dword [0x6d9ee7f8]
mov eax, dword [edx + 0x254]
push esi
push eax
call fcn.6d9e2a30
mov ebp, eax
movzx eax, byte [ebp + 0x10]
add esp, 8
dec eax
je 0x6d9e041d
dec eax
jne case.0x6d9e042d.7
cmp byte [esp + 0x13], 1
je case.0x6d9e042d.7
lea ecx, [esp + 0x4c]
push ecx
mov dword [esp + 0x30], eax
mov eax, dword [0x6d9ee7f8]
mov ecx, dword [eax + 0x254]
lea edx, [esp + 0x30]
push edx
push esi
push ecx
call fcn.6d9e2ac0
mov eax, dword [esp + 0x3c]
add esp, 0x10
test eax, eax
je 0x6d9e0322
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], eax
jmp 0x6d9e0336
mov ecx, dword [0x6d9ee408]
mov edx, dword [0x6d9ee40c]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], edx
movzx ecx, byte [ebp + 0x12]
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x14]
mov edi, dword [ebp + 4]
mov esi, dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x54]
push edx
mov edx, dword [esp + 0x84]
push ecx
push eax
mov dword [esp + 0x3c], eax
push edx
mov eax, edi
call fcn.6d9e0010
add esp, 0x14
test edi, edi
js 0x6d9e0380
cmp edi, dword [esp + 0x2c]
jge 0x6d9e0380
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov dword [ebx + edi*8], eax
mov dword [ebx + edi*8 + 4], ecx
mov edi, dword [esp + 0x24]
mov esi, dword [ebp + 0xc]
test esi, esi
jne 0x6d9e02b3
cmp dword [esp + 0x1c], esi
jle 0x6d9e03a7
mov ecx, dword [esp + 0x28]
push esi
push ecx
call fcn.6d9e1c20
add esp, 8
mov dword [esp + 0x34], eax
mov ebp, dword [esp + 0x78]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x34]
push ebx
push edx
mov edx, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x48]
push edx
mov edx, dword [esp + 0x50]
push eax
mov eax, dword [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x90]
push edx
push eax
push ecx
call fcn.6d9dead0
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x68]
add esp, 8
push eax
mov eax, dword [esp + 0x6c]
push edx
push eax
push ebp
push ecx
push edi
call fcn.6d9dd640
mov edx, dword [esp + 0x60]
push edx
call fcn.6d9e1cc0
add esp, 0x3c
test ebx, ebx
je 0x6d9e0415
push ebx
call sub.msvcr100.dll_free
add esp, 4
pop ebx
pop edi
pop esi
pop ebp
add esp, 0x60
ret
movzx eax, byte [ebp + 0x11]
add eax, 0xfffffffb
cmp eax, 4
ja case.0x6d9e042d.7
jmp dword [eax*4 + 0x6d9e04d0]
cmp byte [esp + 0x13], 1
je case.0x6d9e042d.7
mov eax, dword [0x6d9ee43c]
mov ecx, dword [ebp]
mov edx, dword [0x6d9ee438]
mov edi, dword [ebp + 4]
mov esi, dword [esp + 0x18]
push eax
mov eax, dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x84]
push eax
push ecx
xor eax, eax
mov ecx, ebx
mov dword [esp + 0x3c], edx
call fcn.6d9e00e0
add esp, 0x10
jmp 0x6d9e0380
mov esi, dword [ebp]
push esi
call fcn.6d9dfaf0
push eax
call fcn.6d9e0ca0
mov edx, dword [ebp + 4]
push eax
mov dword [esp + 0x6c], edx
call fcn.6d9d51f0
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x70], eax
lea eax, [esp + 0x6c]
push eax
push ecx
mov dword [esp + 0x7c], esi
call fcn.6d9e1c80
add esp, 0x14
inc dword [esp + 0x1c]
jmp case.0x6d9e042d.7
mov edx, dword [ebp]
mov dword [esp + 0x3c], edx
jmp case.0x6d9e042d.7
mov eax, dword [ebp]
mov dword [esp + 0x38], eax
jmp case.0x6d9e042d.7
jmp 0x6d9e0120