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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c
mov ecx, dword [ebp + 0xc]
push ebx
mov ebx, eax
mov eax, dword [ecx + 0x40]
mov edx, dword [ebx]
push esi
mov esi, dword [ebx + 8]
push edi
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4d0c06
jmp 0x4d0bf7
mov eax, dword [esp + 0x1c]
cmp dword [eax], edx
je 0x4d0c06
mov eax, dword [eax + 0x18]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4d0bf3
movsx edi, word [ecx + 0x2a]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebx + 0x28]
push 0
add edi, 2
push edi
push eax
lea edx, [eax + 1]
push 0x6c
push esi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x34], ecx
mov dword [esp + 0x28], eax
mov dword [ebx + 0x28], edx
call fcn.0048e3e0
mov edx, dword [ebp + 0x1c]
add esp, 0x14
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x2c]
push 0
lea ecx, [eax + 1]
push 4
lea eax, [eax + edi + 1]
push 0
mov dword [esp + 0x34], eax
inc eax
push 0
mov dword [ebx + 0x2c], eax
mov eax, dword [ebp + 8]
push edx
push eax
push ebx
mov dword [esp + 0x2c], ecx
call fcn.004ddc70
add esp, 0x1c
mov dword [esp + 0x30], eax
test eax, eax
je 0x4d10a3
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x20]
push 0
push ecx
push edx
push 0x7b
push esi
call fcn.0048e3e0
mov eax, dword [ebp + 0x14]
add esp, 0x14
test eax, eax
je 0x4d0ca6
mov ecx, dword [esp + 0x10]
inc ecx
push ecx
push eax
push ebx
call fcn.004a7280
add esp, 0xc
jmp 0x4d0cbe
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
push 0
inc edx
push edx
push eax
push 0x7b
push esi
call fcn.0048e3e0
add esp, 0x14
mov edx, dword [ebp + 0xc]
xor ecx, ecx
cmp cx, word [edx + 0x2a]
jge 0x4d0d71
mov edi, dword [esp + 0x10]
mov eax, dword [ebp + 0x18]
mov ecx, 0xfffffffe
add edi, 2
sub ecx, dword [esp + 0x10]
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], ecx
jmp 0x4d0cf4
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
mov eax, dword [edx]
test eax, eax
js 0x4d0d3f
mov ecx, dword [ebp + 0x10]
lea eax, [eax + eax*2]
mov eax, dword [ecx + eax*8 + 8]
test eax, eax
je 0x4d0d20
cmp byte [eax], 0x9d
jne 0x4d0d20
mov edx, dword [eax + 0x1c]
mov eax, dword [ebx + 8]
push 0
push edi
push edx
push 0x40
push eax
jmp 0x4d0d4e
push edi
push eax
push ebx
call fcn.004a6080
add esp, 0xc
cmp eax, edi
je 0x4d0d56
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x4d0d56
push 0
push edi
push eax
push 0x41
push ecx
jmp 0x4d0d4e
push edi
add ecx, edi
push ecx
mov ecx, dword [esp + 0x28]
push ecx
push 0x9d
push esi
call fcn.0048e3e0
add esp, 0x14
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x34]
movsx ecx, word [eax + 0x2a]
add dword [esp + 0x24], 4
inc edi
add edx, edi
cmp edx, ecx
jl 0x4d0cf0
mov edi, dword [esp + 0x18]
mov edx, dword [esp + 0x30]
movzx eax, byte [edx + 0x31]
mov dword [esp + 0x24], eax
test eax, eax
je 0x4d0dc9
mov ecx, dword [esi]
cmp byte [ecx + 0x45], 0
jne 0x4d0db6
mov eax, dword [esp + 0x2c]
mov edx, dword [esi + 0x58]
lea eax, [eax + eax*4]
lea eax, [edx + eax*4]
movsx edx, byte [eax + 1]
mov dword [esp + 0x34], eax
mov eax, dword [eax + 0x10]
call fcn.0048ed10
mov eax, dword [esp + 0x34]
mov dword [eax + 0x10], 0
mov word [eax], 0xa6
cmp dword [ebx + 0x78], 0
jne 0x4d0edf
mov byte [ebx + 0x14], 0
jmp 0x4d0edf
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x10]
push eax
push edi
push ecx
push 0x63
push esi
call fcn.0048e3e0
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x28]
add esp, 0x14
push 0
inc edi
push edi
push edx
push 0x73
push esi
call fcn.0048e3e0
mov eax, dword [esp + 0x3c]
add esp, 0x14
push edi
mov edi, dword [esp + 0x18]
push eax
push edi
push 0x74
push esi
call fcn.0048e3e0
mov ecx, dword [esp + 0x44]
add esp, 0x14
push ecx
call fcn.004de700
mov ecx, dword [esi + 0x88]
mov edx, dword [esi + 0xc]
add esp, 4
cmp dword [edx + 0x30], ecx
jg 0x4d0e3b
push 0
push 0
push edi
push 0x25
mov eax, esi
call fcn.0048e3a0
add esp, 0x10
jmp 0x4d0e66
lea eax, [ecx + 1]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x58]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*4]
xor edx, edx
mov word [eax + 2], dx
mov dword [eax + 4], edi
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov word [eax], 0x25
mov eax, ecx
xor edi, edi
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x18], edi
jle 0x4d0edb
mov eax, dword [esi + 0x88]
mov ecx, dword [esi + 0xc]
cmp dword [ecx + 0x30], eax
jg 0x4d0e9c
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
lea eax, [edi + edx]
push eax
push edi
push ecx
push 0x60
mov eax, esi
call fcn.0048e3a0
add esp, 0x10
jmp 0x4d0ed4
mov ecx, dword [esi + 0x58]
lea edx, [eax + 1]
mov dword [esi + 0x88], edx
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov ecx, dword [esp + 0x14]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x10]
mov dword [eax + 4], ecx
lea ecx, [edi + edx]
mov dword [eax + 8], edi
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], 0
mov word [eax], 0x60
inc edi
cmp edi, dword [esp + 0x18]
jl 0x4d0e72
mov edi, dword [esp + 0x18]
mov edx, dword [ebp + 0xc]
push edx
mov eax, ebx
call fcn.004d2cb0
mov ecx, dword [esi + 0x88]
mov eax, dword [esi + 0xc]
add esp, 4
cmp dword [eax + 0x30], ecx
jg 0x4d0f11
mov ecx, dword [esp + 0x10]
push ecx
push edi
push 0
push 0xc
mov eax, esi
call fcn.0048e3a0
add esp, 0x10
jmp 0x4d0f40
lea edx, [ecx + 1]
mov dword [esi + 0x88], edx
mov edx, dword [esi + 0x58]
lea eax, [ecx + ecx*4]
lea eax, [edx + eax*4]
xor edx, edx
mov dword [eax + 8], edi
mov edi, dword [esp + 0x10]
mov word [eax + 2], dx
mov dword [eax + 4], edx
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], edx
mov word [eax], 0xc
mov eax, ecx
mov ecx, dword [esi]
cmp byte [ecx + 0x45], 0
jne 0x4d0f8a
test eax, eax
jns 0x4d0f53
mov eax, dword [esi + 0x88]
dec eax
lea edx, [eax + eax*4]
mov eax, dword [esi + 0x58]
cmp byte [eax + edx*4 + 1], 0
lea ecx, [eax + edx*4]
je 0x4d0f78
mov edx, dword [esp + 0x1c]
push edx
push esi
mov eax, 0xfffffff4
call fcn.0048ee80
add esp, 8
jmp 0x4d0f8a
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4d0f8a
mov dword [ecx + 0x10], eax
mov byte [ecx + 1], 0xf4
inc dword [eax + 0xc]
mov ecx, dword [ebp + 0x20]
cmp ecx, 0xa
jne 0x4d0f97
mov ecx, 2
mov eax, dword [esi + 0x88]
xor edx, edx
cmp eax, edx
jle 0x4d0fae
mov edi, dword [esi + 0x58]
lea eax, [eax + eax*4]
mov word [edi + eax*4 - 0x12], cx
mov eax, dword [ebx + 0x78]
cmp eax, edx
je 0x4d0fb7
mov ebx, eax
mov byte [ebx + 0x15], 1
cmp dword [esp + 0x24], edx
jne 0x4d1096
mov eax, dword [esi + 0x88]
mov edi, dword [esi + 0xc]
mov ebx, dword [esp + 0x2c]
lea ecx, [ebx + 1]
cmp dword [edi + 0x30], eax
jg 0x4d0fef
mov edi, dword [esp + 0x14]
push edx
push ecx
push edi
push 7
mov eax, esi
call fcn.0048e3a0
add esp, 0x10
jmp 0x4d101c
lea edi, [eax + 1]
mov dword [esi + 0x88], edi
mov edi, dword [esi + 0x58]
lea eax, [eax + eax*4]
lea eax, [edi + eax*4]
xor edi, edi
mov word [eax + 2], di
mov edi, dword [esp + 0x14]
mov dword [eax + 4], edi
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov word [eax], 7
mov ecx, dword [esi + 0x88]
xor edx, edx
mov eax, ebx
cmp ebx, edx
jge 0x4d102d
lea eax, [ecx - 1]
mov ebx, dword [esi]
cmp byte [ebx + 0x45], dl
je 0x4d103b
mov eax, 0x573b6c
jmp 0x4d1044
mov ebx, dword [esi + 0x58]
lea eax, [eax + eax*4]
lea eax, [ebx + eax*4]
mov dword [eax + 8], ecx
mov eax, dword [esi + 0x88]
mov ecx, dword [esi + 0xc]
cmp dword [ecx + 0x30], eax
jg 0x4d106b
push edx
push edx
push edi
push 0x70
mov eax, esi
call fcn.0048e3a0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [eax + 1]
mov dword [esi + 0x88], ecx
mov ecx, dword [esi + 0x58]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov dword [eax + 4], edi
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov dword [eax], 0x70
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x30]
push edx
call fcn.004de700
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret