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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2bc
push ebx
push esi
push edi
lea eax, [esp + 0x4c]
mov esi, ecx
push 4
xor ebx, ebx
push eax
mov dword [esp + 0xd4], esi
mov dword [esp + 0x28], ebx
call fcn.004c15e0
lea ecx, [esp + 0x40]
push 4
push ecx
call fcn.004c15e0
add esp, 0x10
lea edx, [esp + 0x4c]
push edx
lea eax, [ebp + 8]
push eax
lea ecx, [esi + 0x58]
call fcn.004fa510
test eax, eax
mov edi, dword [ebp + 8]
je 0x4dd8c7
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 2
je 0x4dd884
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x38]
mov dword [ecx], ebx
mov dword [edx], 0xc000000d
jmp 0x4e02c7
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
push eax
call fcn.004e60d0
add esp, 4
test eax, eax
jne 0x4dda0d
mov eax, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x38]
mov dword [eax], ebx
mov eax, dword [esp + 0x38]
cmp eax, ebx
mov dword [ecx], 0xc0000022
je 0x4e02db
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x4e02d7
lea ecx, [esp + 0x15c]
call fcn.004f3bd0
lea eax, [esp + 0x15c]
push eax
push ebx
push 0x40
push ebx
push edi
lea ecx, [esp + 0x1b8]
call fcn.004f6f10
mov ecx, eax
call fcn.004f6ee0
push eax
mov ecx, esi
call fcn.004d3ff0
test eax, eax
jne 0x4dd94d
mov eax, dword [esp + 0x184]
cmp eax, ebx
mov ecx, dword [ebp + 0x34]
mov dword [ecx], 1
je 0x4dd922
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x184], ebx
mov eax, dword [esp + 0x164]
cmp eax, ebx
je 0x4dd93c
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x164], ebx
lea ecx, [esp + 0x15c]
call fcn.004f7250
jmp 0x4e02c7
lea ecx, [esp + 0x15c]
call fcn.004f3bc0
mov ecx, eax
call fcn.004e5b00
test eax, eax
lea ecx, [esp + 0x15c]
je 0x4dd97e
mov eax, dword [ebp + 0x34]
mov dword [eax], 1
call fcn.004cc170
jmp 0x4e02c7
lea eax, [esp + 0x40]
push eax
call fcn.0050c0f0
push eax
lea ecx, [esp + 0x3c]
call fcn.004f8030
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x4dd9a2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx]
mov edx, dword [eax + 0x18]
call edx
cmp eax, 2
je 0x4dda01
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
test eax, eax
je 0x4dd9f6
mov eax, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x38]
mov dword [eax], ebx
mov dword [ecx], 0xc000000d
lea ecx, [esp + 0x15c]
call fcn.004cc170
lea ecx, [esp + 0x38]
call fcn.0050ed20
lea ecx, [esp + 0x4c]
call fcn.0050ed20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x34
mov edx, dword [ebp + 0x34]
mov dword [edx], 1
jmp 0x4dd9cf
lea ecx, [esp + 0x15c]
call fcn.004cc170
lea eax, [esp + 0x34]
push 4
push eax
call fcn.004c15e0
mov eax, dword [esp + 0x54]
add esp, 8
cmp eax, ebx
je 0x4dda52
mov ecx, dword [eax]
lea edx, [esp + 0x34]
push edx
push 0x10083be8
push eax
mov eax, dword [ecx]
call eax
test eax, eax
je 0x4dda52
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x38]
mov dword [ecx], ebx
lea ecx, [esp + 0x34]
mov dword [edx], 0xc0000229
call fcn.0050ed20
jmp 0x4dd9db
push 0x200
push ebx
mov dword [esp + 0xe8], 0xff
call fcn.004c1720
mov ecx, dword [ebp + 0x2c]
add esp, 8
cmp ecx, ebx
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], ebx
mov word [eax], bx
je 0x4ddabb
cmp dword [ecx + 4], ebx
je 0x4ddabb
push ecx
lea eax, [esp + 0xf4]
push eax
call fcn.004ab340
mov eax, dword [eax]
add esp, 8
push eax
lea ecx, [esp + 0xdc]
call fcn.004aa370
lea ecx, [esp + 0xf0]
call fcn.004aa5e0
mov eax, dword [esp + 0xd8]
cmp dword [0x100b7158], ebx
je 0x4ddb0d
push 0x100789c8
sub esp, 0xc
mov ecx, esp
push eax
mov dword [ecx], ebx
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
call fcn.004aa370
push 0x10084144
lea ecx, [esp + 0x104]
call fcn.004bcc40
mov ecx, eax
call fcn.004bbb70
mov ecx, eax
call fcn.004ab310
mov ecx, eax
call fcn.004bbb70
lea ecx, [esp + 0xf0]
call fcn.004bba80
lea ecx, [esp + 0x148]
call fcn.004f7130
lea ecx, [esp + 0x148]
push ecx
push edi
mov ecx, esi
call fcn.004d0b40
lea ecx, [esp + 0x148]
call fcn.004f6ee0
push eax
lea edx, [esp + 0xe8]
push edx
call fcn.004ab340
add esp, 8
lea eax, [esp + 0xd4]
push eax
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esi + 0x154]
mov dword [esp + 0xdc], ebx
mov dword [esp + 0x48], edi
call fcn.004ce100
mov eax, dword [esp + 0xd4]
cmp eax, ebx
mov edi, dword [0x100781cc]
je 0x4ddb7d
push eax
call edi
mov eax, dword [ebp + 0xc]
cmp eax, ebx
je 0x4ddb87
push eax
call edi
lea edx, [ebp + 8]
add esi, 0xe8
push edx
mov ecx, esi
call fcn.004fa640
mov edi, eax
neg edi
sbb edi, edi
lea eax, [esp + 0x18]
push 4
add edi, 1
push eax
mov dword [esp + 0x158], edi
call fcn.004c15e0
add esp, 8
cmp edi, ebx
je 0x4dffe5
lea ecx, [esp + 0x40]
push ecx
call fcn.004e52f0
add esp, 4
push eax
lea ecx, [esp + 0x1c]
call fcn.004f8030
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x4ddbe6
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
lea ecx, [esp + 0x18]
push ecx
lea edx, [ebp + 8]
push edx
mov ecx, esi
call fcn.004fa3e0
mov eax, dword [esp + 0xd8]
sub esp, 0xc
mov ecx, esp
push eax
mov dword [ecx], ebx
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
call fcn.004aa370
mov ecx, dword [esp + 0x24]
call fcn.004e5380
mov ecx, dword [esp + 0x38]
cmp ecx, ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x58], 0x100782ec
mov word [esp + 0x54], bx
mov word [esp + 0x56], bx
je 0x4de2bd
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
lea eax, [esp + 0xd0]
push eax
call edx
mov ecx, dword [esp + 0xd0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
lea edx, [esp + 0xc8]
push edx
call eax
lea ecx, [esp + 0x14]
push 4
push ecx
call fcn.004c15e0
mov ecx, dword [esp + 0xd0]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x18]
push eax
call edx
test eax, eax
jne 0x4ddd6e
cmp dword [esp + 0x50], ebx
je 0x4ddcb9
lea ecx, [esp + 0x94]
call fcn.004cca00
jmp 0x4ddd2b
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx + 0x1c]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x144]
push eax
call edx
mov ecx, eax
call fcn.004f6ee0
push eax
lea eax, [esp + 0x8c]
push eax
call fcn.004ab340
add esp, 8
push eax
lea ecx, [esp + 0x9c]
call fcn.004cc7a0
mov eax, dword [esp + 0x84]
cmp eax, ebx
je 0x4ddd1f
push eax
call fcn.004c17d0
add esp, 4
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
lea ecx, [esp + 0x140]
call fcn.004f7250
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4ddd3f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
lea eax, [esp + 0x14]
push 4
push eax
call fcn.004c15e0
mov ecx, dword [esp + 0xd0]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x18]
push eax
call edx
test eax, eax
je 0x4ddca5
lea ecx, [esp + 0x14]
call fcn.0050ed20
mov eax, dword [0x100b7078]
mov edi, dword [0x10078204]
mov esi, dword [eax + 0x3d0]
push 2
push ebx
push ebx
lea ecx, [esp + 0x108]
push ecx
call edi
mov edx, dword [ebp + 8]
push eax
push edx
call edi
push eax
call esi
test eax, eax
jne 0x4de289
mov dword [esp + 0x3c], 0x100
mov dword [esp + 0x90], 1
jmp 0x4dddc0
mov eax, dword [esp + 0xc]
cmp eax, ebx
je 0x4dddd9
push eax
call fcn.004c17d0
add esp, 4
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
mov esi, dword [esp + 0x3c]
push esi
call fcn.004c1680
mov edx, dword [esp + 0x94]
mov ecx, dword [0x100b7078]
add esp, 4
neg edx
push ebx
sbb edx, edx
and edx, dword [ebp + 0x2c]
mov dword [esp + 0x10], eax
push edx
mov dword [esp + 0x18], esi
mov edi, dword [ecx + 0x448]
mov ecx, dword [ebp + 0x24]
push 1
push ecx
push esi
push eax
lea ecx, [esp + 0x1d4]
call fcn.004f6ef0
mov ecx, eax
call fcn.004f6ee0
mov edx, dword [esp + 0x114]
push eax
push ebx
push ebx
push ebx
push edx
call edi
cmp eax, 0xc0000004
je 0x4de264
cmp eax, 0x80000005
je 0x4de264
cmp eax, 0xc0000023
je 0x4de264
cmp eax, ebx
jne 0x4de273
cmp dword [esp + 0x90], ebx
je 0x4dde6c
mov dword [esp + 0x90], ebx
lea eax, [esp + 0x14]
push 4
push eax
call fcn.004c15e0
mov eax, dword [ebp + 0x24]
add eax, 0xfffffffe
add esp, 8
cmp eax, 0x23
ja 0x4de239
movzx ecx, byte [eax + 0x10038cd8]
jmp dword [ecx*4 + 0x10038cc4]
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xc]
push eax
call fcn.004e54f0
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4dddc0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
jmp 0x4dddc0
add esi, 0x100
mov dword [esp + 0x3c], esi
jmp 0x4dddc0
mov eax, dword [esp + 0xfc]
mov ecx, dword [0x100b7078]
mov edx, dword [ecx + 0x268]
push eax
call edx
mov eax, dword [esp + 0xc8]
cmp eax, ebx
je 0x4de2a3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0xc8], ebx
mov eax, dword [esp + 0xd0]
cmp eax, ebx
je 0x4de2bd
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0xd0], ebx
lea ecx, [esp + 0x114]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
call fcn.004f7130
push 0x200
mov esi, 0xff
push ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], esi
call fcn.004c1720
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ebx
mov word [eax], bx
lea eax, [esp + 0x2c]
push 4
push eax
call fcn.004c15e0
push 0x200
push ebx
mov dword [esp + 0xa4], esi
call fcn.004c1720
mov ecx, dword [ebp + 0x24]
mov edi, eax
lea eax, [ecx - 2]
add esp, 0x18
cmp eax, 0x23
mov dword [esp + 0x84], edi
mov dword [esp + 0x88], ebx
mov word [edi], bx
ja 0x4e0047
movzx edx, byte [eax + 0x10038d10]
jmp dword [edx*4 + 0x10038cfc]
mov ecx, dword [esp + 0xcc]
lea eax, [ebp + 8]
push eax
add ecx, 0xe8
call fcn.004cdb70
mov esi, eax
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4e0011
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x18], ebx
mov ecx, dword [esi]
cmp ecx, ebx
mov dword [esp + 0x18], ecx
je 0x4e0027
mov eax, dword [ecx]
push ecx
mov ecx, dword [eax + 4]
call ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [ebp + 0x34]
mov dword [edx], ebx
call fcn.004e5650
test eax, eax
je 0x4e0167
mov edi, dword [ebp + 0x38]
mov dword [edi], 0xc000000f
jmp 0x4e021a
cmp dword [esp + 0x38], ebx
je 0x4e0058
mov eax, dword [ebp + 0x34]
mov dword [eax], 1
jmp 0x4e0097
mov ecx, dword [ebp + 0x38]
mov eax, dword [ebp + 0x10]
cmp eax, ebx
mov edx, dword [ebp + 0x34]
mov esi, dword [ebp + 0x14]
mov dword [ecx], 0xc000000d
mov dword [edx], ebx
je 0x4e0084
mov ecx, dword [ebp + 0x18]
push ebx
push ecx
push esi
push eax
call dword [0x10078090]
push eax
call dword [0x100b7308]
mov edx, dword [ebp + 8]
mov ecx, dword [esp + 0xcc]
push ebx
push ebx
push esi
push edx
call fcn.004d3ed0
push edi
call fcn.004c17d0
mov eax, dword [esp + 0x28]
add esp, 4
cmp eax, ebx
je 0x4e00b4
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x4e00d1
push eax
call fcn.004c17d0
add esp, 4
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
lea ecx, [esp + 0x114]
call fcn.004f7250
lea ecx, [esp + 0x78]
call fcn.004cca60
lea ecx, [esp + 0x78]
call fcn.004cca60
mov eax, dword [esp + 0x78]
cmp eax, ebx
je 0x4e0109
mov esi, dword [eax + 4]
push eax
call fcn.004a8630
add esp, 4
cmp esi, ebx
mov eax, esi
jne 0x4e00f7
mov eax, dword [esp + 0x68]
cmp eax, ebx
je 0x4e011a
push eax
call fcn.004c17d0
add esp, 4
mov eax, dword [esp + 0xc]
cmp eax, ebx
je 0x4e0133
push eax
call fcn.004c17d0
add esp, 4
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
lea ecx, [esp + 0x94]
call fcn.004cca00
mov eax, dword [esp + 0x94]
cmp eax, ebx
je 0x4e026b
mov edi, edi
mov esi, dword [eax + 4]
push eax
call fcn.004a8630
add esp, 4
cmp esi, ebx
mov eax, esi
jne 0x4e0150
jmp 0x4e026b
cmp byte [ebp + 0x30], bl
je 0x4e0175
mov ecx, dword [esp + 0x18]
call fcn.004e5570
mov ecx, dword [esp + 0x18]
call fcn.004e56c0
test eax, eax
je 0x4e019e
mov eax, dword [esp + 0x150]
mov edi, dword [ebp + 0x38]
neg eax
sbb eax, eax
and eax, 0x40000009
add eax, 0x80000006
mov dword [edi], eax
jmp 0x4e021a
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x54]
push eax
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
call fcn.004e5730
mov esi, dword [ebp + 0x20]
mov eax, dword [esp + 0x58]
cmp esi, eax
jae 0x4e01df
mov ecx, dword [esp + 0x18]
call fcn.004e5480
mov edi, dword [ebp + 0x38]
cmp esi, eax
sbb ecx, ecx
and ecx, 0x3fffffff
add ecx, 0x80000005
mov dword [edi], ecx
jmp 0x4e0209
mov edx, dword [esp + 0x54]
push eax
mov eax, dword [ebp + 0x1c]
push edx
push eax
call fcn.004c1600
mov ecx, dword [ebp + 0x18]
mov edx, dword [esp + 0x64]
mov dword [ecx + 4], edx
mov ecx, dword [esp + 0x24]
add esp, 0xc
call fcn.004e55e0
mov edi, dword [ebp + 0x38]
mov dword [edi], ebx
mov eax, dword [esp + 0x54]
cmp eax, ebx
je 0x4e021a
push eax
call fcn.004c17d0
add esp, 4
mov eax, dword [esp + 0xd4]
cmp eax, ebx
mov esi, dword [0x1007808c]
je 0x4e022e
push eax
call esi
mov eax, dword [ebp + 0xc]
cmp eax, ebx
je 0x4e0238
push eax
call esi
mov eax, dword [ebp + 0x10]
cmp eax, ebx
mov esi, dword [ebp + 0x14]
je 0x4e0256
mov ecx, dword [ebp + 0x18]
push ebx
push ecx
push esi
push eax
call dword [0x10078090]
push eax
call dword [0x100b7308]
mov edx, dword [edi]
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0xcc]
push ebx
push edx
push esi
push eax
call fcn.004d3ed0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4e027f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0xe4]
cmp eax, ebx
je 0x4e0293
push eax
call fcn.004c17d0
add esp, 4
lea ecx, [esp + 0x148]
call fcn.004f7250
mov eax, dword [esp + 0xd8]
cmp eax, ebx
je 0x4e02b3
push eax
call fcn.004c17d0
add esp, 4
mov eax, dword [esp + 0x34]
cmp eax, ebx
je 0x4e02c7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x38]
cmp eax, ebx
je 0x4e02db
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x38], ebx
mov eax, dword [esp + 0x4c]
cmp eax, ebx
je 0x4e02eb
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x34