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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x8c
mov dword [esp + 0x1c], ecx
mov ecx, dword [edx + 0x24]
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x18], edx
cmp byte [ecx + 0x162], 0
mov dword [esp + 0x20], ecx
je 0x4d05c9
cmp byte [ecx + 0x163], 0
setne cl
mov dword [esp + 0x40], ecx
jmp 0x4d05d1
mov dword [esp + 0x40], 0
mov edi, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
cmp edi, eax
mov dword [esp + 0x54], eax
ja 0x4d0ef7
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0xac]
mov eax, dword [esp + 0xa0]
mov ebx, dword [ecx + 0x138]
mov ebp, esi
xor ecx, ecx
sub ebp, ebx
mov edx, ebx
mov dword [esp + 0x24], ebx
mov ebx, 0x20
cmovae ecx, ebp
mov dword [esp + 0x2c], ebp
cmp ecx, 0x20
cmovb ebx, ecx
mov dword [eax + 0xc], ebx
mov edx, dword [eax + 8]
cmp ebx, edx
ja 0x4d11e9
mov ebp, dword [eax + 4]
test ebx, ebx
je 0x4d0641
lea eax, [ebx*4]
push eax
push 0
push ebp
call fcn.007bdf30
add esp, 0xc
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0xa8]
test esi, esi
mov dword [esp + 0x34], ebp
je 0x4d0667
lea eax, [esi*4]
push eax
push 0
push ebx
call fcn.007bdf30
add esp, 0xc
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x54]
mov eax, dword [eax + 0x15c]
test eax, eax
js 0x4d11f5
je 0x4d069d
lea ecx, [edi + 1]
xor edx, edx
nop word cs:[eax + eax]
nop
cmp edx, esi
jae 0x4d069d
mov dword [ebx + edx*4], ecx
add edx, 2
dec eax
jne 0x4d0690
mov eax, dword [esp + 0xa4]
mov eax, dword [eax]
test eax, eax
je 0x4d06f4
cmp eax, 1
je 0x4d070a
mov eax, dword [esp + 0xa4]
mov esi, dword [eax + 4]
mov eax, dword [esp + 0x18]
test byte [eax + 9], 1
jne 0x4d0e8a
movzx eax, byte [0x94bfc5]
xor ecx, ecx
mov edx, 0xc
call fcn.0071ee80
test eax, eax
je 0x4d1241
mov byte [eax], 3
mov dword [eax + 4], 2
mov dword [eax + 8], esi
jmp 0x4d0ec8
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 0x130]
cmp eax, dword [ecx + 0x134]
jne 0x4d0ea3
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x20], 0
je 0x4d113d
mov esi, dword [eax + 0x1c]
mov edx, ebp
mov ebp, dword [esi]
cmp edi, edx
jae 0x4d0d46
movzx ecx, byte [eax + 8]
mov dword [esp + 0x30], 0
mov byte [esp + 0x12], cl
mov ecx, eax
mov eax, dword [esp + 0xa4]
mov edx, dword [eax + 8]
mov esi, dword [eax + 0xc]
mov eax, 0x20
mov dword [esp + 4], edx
mov edx, dword [ecx + 0x130]
mov dword [esp], esi
and edx, 0x1f
mov dword [esp + 0x68], edx
mov edx, dword [ecx + 0x10]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x2c]
cmp edx, 0x20
cmovb eax, edx
cmp esi, edi
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xa4]
movzx eax, byte [eax + 0x18]
mov byte [esp + 0x13], al
mov eax, edi
cmova eax, esi
mov esi, ebp
mov dword [esp + 0x44], eax
mov eax, dword [ecx + 0x14]
mov dword [esp + 0x28], eax
mov eax, dword [ecx + 0x28]
mov dword [esp + 0x48], eax
mov eax, dword [ecx + 0x134]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x24]
lea eax, [ebx + eax*4]
mov dword [esp + 0x38], eax
lea eax, [edx*4]
mov dword [esp + 0x5c], eax
jmp 0x4d07cb
shr esi, 0xb
cmp edi, ebp
je 0x4d0eda
cmp edi, dword [esp + 0x44]
je 0x4d0f26
mov eax, dword [esp + 4]
mov ebx, esi
mov ecx, dword [esp + 0x68]
mov esi, edi
movzx edx, byte [eax + edi]
mov eax, ebx
shl eax, cl
mov ecx, dword [esp + 0x18]
movzx edi, dl
movzx ecx, byte [ecx + edi + 0x2c]
mov dword [esp + 8], edi
add ecx, eax
cmp ecx, dword [esp + 0x28]
jae 0x4d0f37
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x58], ebx
lea edi, [esi + 1]
mov ebx, dword [ebp + ecx*8]
mov ecx, dword [ebp + ecx*8 + 4]
mov ebp, dword [esp + 0x58]
cmp ebp, dword [esp + 0x48]
mov dword [esp + 0x50], ecx
jb 0x4d0b10
add eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x28]
jae 0x4d0f45
mov ecx, dword [esp + 0x4c]
mov ebp, dword [ecx + eax*8]
mov ecx, dword [ecx + eax*8 + 4]
test ebp, 0x3ff
mov dword [esp + 0xc], ebp
je 0x4d0a30
mov eax, dword [esp + 0x20]
mov ebp, ecx
test esi, esi
mov dh, byte [eax + 0x160]
mov eax, dword [esp + 0xc]
je 0x4d0872
mov ecx, eax
and ecx, 1
jne 0x4d0b10
cmp esi, dword [esp]
je 0x4d0882
mov ecx, eax
and ecx, 2
jne 0x4d0b10
test esi, esi
je 0x4d08aa
mov ecx, eax
and ecx, 4
je 0x4d08aa
lea ecx, [esi - 1]
cmp ecx, dword [esp]
jae 0x4d1171
mov eax, dword [esp + 4]
cmp byte [eax + ecx], dh
mov eax, dword [esp + 0xc]
jne 0x4d0b10
cmp esi, dword [esp]
je 0x4d08c7
mov ecx, eax
and ecx, 8
je 0x4d08c7
cmp esi, dword [esp]
jae 0x4d117e
cmp dl, dh
jne 0x4d0b10
test al, 0x10
je 0x4d08ff
test esi, esi
je 0x4d08ff
lea ecx, [esi - 1]
cmp ecx, dword [esp]
jae 0x4d118d
mov eax, dword [esp + 4]
movzx eax, byte [eax + ecx]
cmp eax, 0xa
je 0x4d08ff
cmp eax, 0xd
jne 0x4d0b10
cmp esi, dword [esp]
jae 0x4d08ff
cmp dl, 0xa
je 0x4d0b10
mov eax, dword [esp + 0xc]
test al, 0x20
je 0x4d0922
cmp esi, dword [esp]
je 0x4d0922
jae 0x4d119a
cmp dl, 0xa
je 0x4d094a
cmp dword [esp + 8], 0xd
jne 0x4d0b10
test al, 0x40
je 0x4d099d
test esi, esi
je 0x4d0978
lea ecx, [esi - 1]
cmp ecx, dword [esp]
jae 0x4d1130
mov eax, dword [esp + 4]
movzx eax, byte [eax + ecx]
cmp byte [eax + 0x850f84], 0
setne al
jmp 0x4d097a
test esi, esi
je 0x4d096e
mov eax, dword [esp + 4]
cmp byte [eax + esi - 1], 0xd
je 0x4d0b10
mov eax, dword [esp + 0xc]
lea ecx, [esi - 1]
test al, 0x40
jne 0x4d092d
test al, al
js 0x4d09a8
jmp 0x4d09ea
test al, 0x40
jne 0x4d0978
test al, al
jns 0x4d09ea
jmp 0x4d09c5
xor eax, eax
cmp esi, dword [esp]
jae 0x4d0991
mov ecx, dword [esp + 8]
cmp byte [ecx + 0x850f84], 0
setne cl
cmp al, cl
jmp 0x4d0993
test al, al
mov eax, dword [esp + 0xc]
je 0x4d0b10
test al, al
jns 0x4d09ea
test esi, esi
je 0x4d09c5
lea ecx, [esi - 1]
cmp ecx, dword [esp]
jae 0x4d1130
mov eax, dword [esp + 4]
movzx eax, byte [eax + ecx]
cmp byte [eax + 0x850f84], 0
setne al
jmp 0x4d09c7
xor eax, eax
cmp esi, dword [esp]
jae 0x4d09de
mov ecx, dword [esp + 8]
cmp byte [ecx + 0x850f84], 0
setne cl
xor al, cl
jmp 0x4d09e0
test al, al
mov eax, dword [esp + 0xc]
jne 0x4d0b10
test eax, 0x100
je 0x4d0a0d
mov ecx, dword [esp + 4]
mov edx, dword [esp]
push esi
call fcn.004d1290
add esp, 4
test al, al
mov eax, dword [esp + 0xc]
je 0x4d0b10
test eax, 0x200
mov ecx, ebp
je 0x4d0a30
mov ecx, dword [esp + 4]
mov edx, dword [esp]
push esi
call fcn.004d1640
mov ecx, ebp
add esp, 4
test al, al
je 0x4d0b10
mov eax, ecx
mov dword [esp + 8], ecx
shr eax, 9
or eax, 1
cmp eax, dword [esp + 0xac]
jae 0x4d0a4f
mov ecx, dword [esp + 0xa8]
mov dword [ecx + eax*4], edi
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x38]
cmp dword [esp + 0xac], eax
jbe 0x4d0ad1
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x14]
jne 0x4d1250
push dword [esp + 0x5c]
push dword [esp + 0x38]
push ecx
call fcn.007bd9b0
mov edx, dword [esp + 0x44]
add esp, 0xc
mov ebp, dword [esp + 0xc]
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x60]
shrd ebp, eax, 0xa
je 0x4d0ad1
mov eax, ebp
tzcnt eax, ebp
cmp eax, dword [esp + 0x14]
jb 0x4d0abb
jmp 0x4d0ad1
mov ebp, eax
mov eax, 0x20
cmp eax, ecx
jae 0x4d0ad1
btr ebp, eax
mov dword [edx + eax*4], edi
mov eax, ebp
test ebp, ebp
je 0x4d0ab0
mov ebp, eax
tzcnt eax, eax
cmp eax, ecx
jb 0x4d0abb
mov ecx, dword [esp + 8]
shr ecx, 0xa
cmp byte [esp + 0x13], 0
jne 0x4d10b0
cmp byte [esp + 0x12], 0
mov dword [esp + 0x30], 1
je 0x4d0b06
mov eax, dword [esp + 0x50]
mov dword [esp + 0x3c], ecx
and eax, 0x400
je 0x4d0b10
jmp 0x4d10b0
mov dword [esp + 0x3c], ecx
nop word [eax + eax]
cmp dword [esp + 0x58], 0
je 0x4d0ee8
mov ebp, dword [esp + 0x54]
test ebx, 0x3ff
je 0x4d0d00
test bl, 1
sete al
test esi, esi
sete cl
test bl, 2
jne 0x4d0ee8
or cl, al
je 0x4d0ee8
mov eax, dword [esp + 0x20]
test esi, esi
movzx eax, byte [eax + 0x160]
je 0x4d0b6b
mov ecx, ebx
and ecx, 4
je 0x4d0b6b
mov ecx, dword [esp + 4]
cmp byte [esi + ecx - 1], al
jne 0x4d0ee8
test bl, 8
je 0x4d0b7d
mov ecx, dword [esp + 4]
cmp byte [ecx + esi], al
jne 0x4d0ee8
test esi, esi
je 0x4d0bad
mov eax, ebx
and eax, 0x10
je 0x4d0bad
mov eax, dword [esp + 4]
movzx eax, byte [esi + eax - 1]
cmp eax, 0xa
je 0x4d0bad
cmp eax, 0xd
jne 0x4d0ee8
mov eax, dword [esp + 4]
cmp byte [eax + esi], 0xa
je 0x4d0ee8
test bl, 0x20
je 0x4d0bf0
mov eax, dword [esp + 4]
movzx eax, byte [eax + esi]
cmp eax, 0xd
je 0x4d0bf0
cmp eax, 0xa
jne 0x4d0ee8
test esi, esi
je 0x4d0c8b
mov eax, dword [esp + 4]
cmp byte [eax + esi - 1], 0xd
je 0x4d0ee8
lea ecx, [esi - 1]
test bl, 0x40
jne 0x4d0c17
test bl, bl
js 0x4d0c4f
jmp 0x4d0cc0
test bl, 0x40
jne 0x4d0c10
test bl, bl
jns 0x4d0cc0
test esi, esi
jne 0x4d0c4c
mov eax, dword [esp + 4]
movzx eax, byte [eax + esi]
jmp 0x4d0ca6
test esi, esi
je 0x4d0c81
lea ecx, [esi - 1]
cmp ecx, dword [esp]
jae 0x4d1130
mov edx, dword [esp + 4]
movzx eax, byte [edx + ecx]
movzx ecx, byte [edx + esi]
cmp byte [eax + 0x850f84], 0
setne al
cmp byte [ecx + 0x850f84], 0
setne cl
xor cl, al
je 0x4d0ee8
test bl, bl
jns 0x4d0cc0
lea ecx, [esi - 1]
cmp ecx, dword [esp]
jae 0x4d1130
mov edx, dword [esp + 4]
movzx eax, byte [edx + ecx]
movzx ecx, byte [edx + esi]
cmp byte [eax + 0x850f84], 0
setne al
cmp byte [ecx + 0x850f84], 0
setne cl
xor cl, al
je 0x4d0cc0
jmp 0x4d0ee8
mov eax, dword [esp + 4]
movzx eax, byte [eax + esi]
jmp 0x4d0c92
mov al, 0xa
test bl, 0x40
je 0x4d0ca2
movzx ecx, al
cmp byte [ecx + 0x850f84], 0
je 0x4d0ee8
test bl, bl
jns 0x4d0cc0
movzx eax, al
cmp byte [eax + 0x850f84], 0
jne 0x4d0ee8
nop word cs:[eax + eax]
test ebx, 0x100
je 0x4d0ce0
mov ecx, dword [esp + 4]
mov edx, dword [esp]
push esi
call fcn.004d1290
add esp, 4
test al, al
je 0x4d0ee8
test ebx, 0x200
je 0x4d0d00
mov ecx, dword [esp + 4]
mov edx, dword [esp]
push esi
call fcn.004d1640
add esp, 4
test al, al
je 0x4d0ee8
mov esi, dword [esp + 0x50]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x34]
shrd ebx, esi, 0xa
jne 0x4d0d40
jmp 0x4d07c0
cmp eax, ecx
jae 0x4d07c0
btr ebx, eax
mov dword [edx + eax*4], edi
test ebx, ebx
jne 0x4d0d40
mov eax, 0x20
jmp 0x4d0d20
tzcnt eax, ebx
jmp 0x4d0d20
mov ecx, dword [eax + 0x28]
mov esi, ebp
mov dword [esp + 0x30], 0
cmp esi, ecx
jb 0x4d0ee8
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax + 0x130]
mov edi, dword [eax + 0x14]
shl esi, cl
add esi, dword [eax + 0x134]
cmp esi, edi
jae 0x4d114b
mov eax, dword [eax + 0x10]
mov ebp, edx
mov ebx, dword [eax + esi*8]
mov esi, dword [eax + esi*8 + 4]
test ebx, 0x3ff
je 0x4d1011
mov eax, dword [esp + 0xa4]
test ebp, ebp
mov edx, dword [eax + 8]
mov edi, dword [eax + 0xc]
mov eax, dword [esp + 0x20]
movzx eax, byte [eax + 0x160]
je 0x4d0db8
mov ecx, ebx
and ecx, 1
jne 0x4d0ee8
cmp ebp, edi
je 0x4d0dc7
mov ecx, ebx
and ecx, 2
jne 0x4d0ee8
test ebp, ebp
je 0x4d0de6
mov ecx, ebx
and ecx, 4
je 0x4d0de6
lea ecx, [ebp - 1]
cmp ecx, edi
jae 0x4d11a9
cmp byte [edx + ecx], al
jne 0x4d0ee8
cmp ebp, edi
je 0x4d0e02
mov ecx, ebx
and ecx, 8
je 0x4d0e02
cmp ebp, edi
jae 0x4d11b5
cmp byte [edx + ebp], al
jne 0x4d0ee8
test bl, 0x10
je 0x4d0e36
test ebp, ebp
je 0x4d0e36
lea ecx, [ebp - 1]
cmp ecx, edi
jae 0x4d11cf
movzx eax, byte [edx + ecx]
cmp eax, 0xa
je 0x4d0e36
cmp eax, 0xd
jne 0x4d0ee8
cmp ebp, edi
jae 0x4d0e36
cmp byte [edx + ebp], 0xa
je 0x4d0ee8
test bl, 0x20
je 0x4d0e5b
cmp ebp, edi
je 0x4d0e5b
jae 0x4d11db
movzx eax, byte [edx + ebp]
cmp eax, 0xa
je 0x4d0f06
cmp eax, 0xd
jne 0x4d0ee8
test bl, 0x40
je 0x4d0f86
test ebp, ebp
je 0x4d0f60
lea ecx, [ebp - 1]
cmp ecx, edi
jae 0x4d11c3
movzx eax, byte [edx + ecx]
cmp byte [eax + 0x850f84], 0
setne al
jmp 0x4d0f62
inc esi
mov edx, ebp
xor ebp, ebp
cmp esi, dword [eax + 0x20]
jae 0x4d071f
shl esi, 2
add esi, dword [eax + 0x1c]
jmp 0x4d071d
movzx eax, byte [0x94bfc5]
xor ecx, ecx
mov edx, 0xc
call fcn.0071ee80
test eax, eax
je 0x4d1241
mov byte [eax], 3
mov dword [eax + 4], 0
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 4], eax
mov dword [ecx], 2
jmp 0x4d1125
mov ecx, dword [esp + 0x48]
mov edx, ebp
cmp esi, ecx
jae 0x4d0d5b
cmp dword [esp + 0x30], 1
mov ecx, dword [esp + 0x3c]
je 0x4d10b0
mov eax, dword [esp + 0x1c]
mov dword [eax], 0
jmp 0x4d1125
test ebp, ebp
je 0x4d0f55
cmp byte [edx + ebp - 1], 0xd
je 0x4d0ee8
lea ecx, [ebp - 1]
test bl, 0x40
jne 0x4d0e6f
test bl, bl
js 0x4d0f91
jmp 0x4d0fcf
mov ecx, dword [esp + 0x44]
mov edx, dword [esp]
push 0x84e794
call fcn.007c1be0
mov edx, dword [esp + 0x28]
push 0x84e8a8
call fcn.007c1be0
mov edx, dword [esp + 0x28]
mov ecx, eax
push 0x84e8c8
call fcn.007c1be0
test bl, 0x40
jne 0x4d0f60
test bl, bl
jns 0x4d0fcf
jmp 0x4d0fa9
xor eax, eax
cmp ebp, edi
jae 0x4d0f7e
movzx ecx, byte [edx + ebp]
cmp byte [ecx + 0x850f84], 0
setne cl
cmp al, cl
je 0x4d0ee8
jmp 0x4d0f86
test al, al
je 0x4d0ee8
test bl, bl
jns 0x4d0fcf
test ebp, ebp
je 0x4d0fa9
lea ecx, [ebp - 1]
cmp ecx, edi
jae 0x4d11c3
movzx eax, byte [edx + ecx]
cmp byte [eax + 0x850f84], 0
setne al
jmp 0x4d0fab
xor eax, eax
cmp ebp, edi
jae 0x4d0fc7
movzx ecx, byte [edx + ebp]
cmp byte [ecx + 0x850f84], 0
setne cl
xor al, cl
jne 0x4d0ee8
jmp 0x4d0fcf
test al, al
jne 0x4d0ee8
test ebx, 0x100
je 0x4d0ff4
mov ecx, edx
mov dword [esp + 4], edx
mov edx, edi
push ebp
call fcn.004d1290
mov edx, dword [esp + 8]
add esp, 4
test al, al
je 0x4d0ee8
test ebx, 0x200
je 0x4d1011
mov ecx, edx
mov edx, edi
push ebp
call fcn.004d1640
add esp, 4
test al, al
je 0x4d0ee8
mov eax, esi
shr eax, 9
or eax, 1
cmp eax, dword [esp + 0xac]
jae 0x4d102f
mov edx, dword [esp + 0xa8]
lea ecx, [ebp + 1]
mov dword [edx + eax*4], ecx
mov ecx, dword [esp + 0xac]
mov eax, esi
shr eax, 0xa
mov dword [esp + 8], eax
sub ecx, dword [esp + 0x24]
jbe 0x4d10ac
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x14]
cmp ecx, ebx
jne 0x4d1276
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x24]
lea edi, [eax + ecx*4]
lea eax, [ebx*4]
push eax
push dword [esp + 0x38]
push edi
call fcn.007bd9b0
add esp, 0xc
mov eax, dword [esp + 4]
shld esi, eax, 0x16
je 0x4d10ac
tzcnt eax, esi
cmp eax, ebx
jae 0x4d10ac
inc ebp
jmp 0x4d1098
mov eax, 0x20
cmp eax, dword [esp + 0x14]
jae 0x4d10ac
btr esi, eax
mov dword [edi + eax*4], ebp
test esi, esi
je 0x4d108d
tzcnt eax, esi
cmp eax, dword [esp + 0x14]
jb 0x4d1098
mov ecx, dword [esp + 8]
cmp byte [esp + 0x40], 0
je 0x4d1118
mov esi, dword [esp + 0xac]
mov ebx, ecx
add ecx, ecx
cmp ecx, esi
jae 0x4d1159
mov edi, dword [esp + 0xa8]
mov edx, dword [esp + 0xa4]
mov eax, dword [edi + ecx*4]
test eax, eax
je 0x4d1262
lea ecx, [ebx + ebx + 1]
cmp ecx, esi
jae 0x4d1165
mov ecx, dword [edi + ecx*4]
test ecx, ecx
je 0x4d126c
cmp eax, ecx
mov ecx, ebx
jne 0x4d1118
dec eax
cmp eax, dword [edx + 0xc]
jae 0x4d1112
mov ecx, dword [edx + 8]
cmp byte [ecx + eax], 0xbf
mov ecx, ebx
jg 0x4d1118
jmp 0x4d0ef7
jne 0x4d0ef7
mov eax, dword [esp + 0x1c]
mov dword [eax], 1
mov dword [eax + 4], ecx
add esp, 0x8c
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [esp]
push 0x851140
call fcn.007c1be0
xor ecx, ecx
xor edx, edx
push 0x84e824
call fcn.007c1be0
mov ecx, esi
mov edx, edi
push 0x84e8c8
call fcn.007c1be0
mov edx, esi
push 0x84e754
call fcn.007c1be0
mov edx, esi
push 0x84e774
call fcn.007c1be0
mov edx, dword [esp]
push 0x850f64
call fcn.007c1be0
mov edx, dword [esp]
mov ecx, esi
push 0x850f74
call fcn.007c1be0
mov edx, dword [esp]
push 0x851120
call fcn.007c1be0
mov edx, dword [esp]
mov ecx, esi
push 0x851130
call fcn.007c1be0
mov edx, edi
push 0x850f64
call fcn.007c1be0
mov ecx, ebp
mov edx, edi
push 0x850f74
call fcn.007c1be0
mov edx, edi
push 0x851140
call fcn.007c1be0
mov edx, edi
push 0x851120
call fcn.007c1be0
mov ecx, ebp
mov edx, edi
push 0x851130
call fcn.007c1be0
mov ecx, ebx
push 0x84ea38
call fcn.007c1c40
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x74]
mov edx, 0x852630
mov dword [esp + 0x6c], 0x851a20
mov dword [esp + 0x74], 0x852628
mov dword [esp + 0x78], 1
mov dword [esp + 0x84], 0
mov dword [esp + 0x70], fcn.00412930
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], 1
call fcn.007c1b50
mov ecx, 4
mov edx, 0xc
call fcn.007c1490
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x14]
push 0x84e814
call fcn.007c21f0
mov ecx, 0x84e764
call fcn.007c1fe0
mov ecx, 0x84e784
call fcn.007c1fe0
mov edx, ebx
push 0x84e814
call fcn.007c21f0
int3