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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa4
mov eax, dword [0x1022905c]
xor eax, esp
mov dword [esp + 0xa0], eax
push ebx
push esi
mov esi, ecx
xor ebx, ebx
push edi
mov edi, edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x2c], edi
mov ecx, dword [esi + 8]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x20], ebx
test ecx, ecx
jne 0x484221
xor eax, eax
jmp 0x484fa8
test edi, edi
je 0x484f95
movzx edx, byte [edi]
mov dword [esp + 0x10], edx
cmp edx, 0x6a
jbe 0x4849be
lea eax, [edx - 0x6b]
mov dword [esp + 0x10], edx
cmp eax, 0x45
ja 0x484d53
movzx eax, byte [eax + 0x1008501c]
jmp dword [eax*4 + 0x10084fc0]
mov eax, ebx
jmp 0x484fa5
mov eax, dword [ebp + 8]
jmp 0x484fa8
mov eax, ebx
jmp 0x484fa8
pop edx
jmp 0x484f6e
add esp, 0x10
jmp 0x484f7a
call fcn.0047216a
jmp 0x484f7a
je 0x484f40
cmp edx, 0x36
ja 0x484bd4
je 0x484a26
cmp edx, 0x30
ja 0x484ade
je 0x484aca
mov eax, edx
sub eax, 0x13
je 0x484ab0
sub eax, 1
je 0x484aa2
sub eax, 0x10
je 0x484a4e
sub eax, 7
je 0x484f40
sub eax, 1
je 0x484f40
sub eax, 1
jne 0x484d53
xor eax, eax
mov ebx, 0x80
cmp edx, 0x2d
sete al
lea edx, [eax + 0x34]
mov dword [esp + 0x10], edx
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x3c], ecx
call fcn.0048143a
cmp eax, 1
jle 0x484cdd
push ebx
push edx
push dword [ebp + 8]
mov edx, edi
mov ecx, esi
call fcn.00481540
jmp 0x484f77
push dword [ebp + 8]
mov edx, dword [edi + 0xc]
mov ecx, esi
call fcn.004841dc
mov esi, dword [ebp + 8]
mov dword [esp + 0x24], eax
pop ecx
cmp eax, esi
je 0x484a7d
mov ecx, dword [esp + 0xc]
push ebx
push esi
push eax
push 0x4f
pop edx
call fcn.00471e77
add esp, 0xc
mov dword [esp + 0x20], esi
mov ecx, dword [edi + 8]
xor edx, edx
call fcn.0048adf8
mov ecx, dword [esp + 0xc]
push ebx
movsx eax, al
push eax
push esi
push 0x55
pop edx
call fcn.00471e77
mov eax, dword [esp + 0x2c]
jmp 0x484fa5
mov edx, edi
mov ecx, esi
call fcn.0048372d
jmp 0x484fa8
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.004850fb
pop ecx
mov ecx, dword [ebp + 8]
push ebx
push ecx
jmp 0x484f69
push ebx
push ebx
mov ebx, dword [ebp + 8]
mov edx, edi
push ebx
mov ecx, esi
call fcn.00485379
jmp 0x484290
mov eax, edx
sub eax, 0x31
je 0x484b64
sub eax, 1
je 0x484b06
sub eax, 1
je 0x484b06
sub eax, 1
je 0x484a26
sub eax, 1
je 0x484a26
jmp 0x484d53
push ebx
push dword [ebp + 8]
push 1
push 0x46
pop edx
call fcn.00471e77
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x24]
add esp, 0xc
mov ecx, esi
push eax
call fcn.004850fb
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
pop ecx
push ebx
push ebx
push eax
mov ecx, edi
call fcn.00471e77
add esp, 0xc
mov ecx, edi
mov esi, eax
push ebx
push dword [ebp + 8]
push ebx
push 0x46
pop edx
call fcn.00471e77
add esp, 0xc
mov edx, esi
mov ecx, edi
call fcn.004725d9
mov ecx, dword [edi + 0x6c]
mov dword [eax + 8], ecx
jmp 0x484f7a
mov esi, dword [esi + 0x38]
mov eax, dword [esp + 0x14]
dec esi
push ebx
push dword [ebp + 8]
push ebx
push 0x49
lea edi, [esi - 1]
pop edx
mov dword [eax + 0x38], edi
call fcn.00471e77
mov edx, dword [esp + 0x38]
add esp, 0xc
mov ecx, dword [esp + 0x14]
push edi
push esi
call fcn.004839b3
mov ecx, dword [esp + 0x14]
push ebx
push dword [ebp + 8]
push 1
push 0x46
pop edx
call fcn.00471e77
add esp, 0x14
mov edx, esi
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.0047216a
push ebx
push ebx
mov ebx, dword [ebp + 8]
mov ecx, esi
push ebx
push 0x53
pop edx
call fcn.00471e77
add esp, 0xc
mov edx, edi
mov ecx, esi
call fcn.0047216a
jmp 0x48445b
cmp edx, 0x64
ja 0x484d26
je 0x484f40
mov eax, edx
sub eax, 0x37
je 0x484a26
sub eax, 1
je 0x484a26
sub eax, 1
je 0x484a26
sub eax, 0xe
je 0x484c6e
sub eax, 6
je 0x484c12
sub eax, 0x16
jmp 0x484d4d
mov eax, dword [edi + 0x2c]
mov edx, 0x95
mov esi, dword [ebp + 8]
mov dword [esp + 0x3c], eax
push ebx
movsx ecx, word [eax + 0x2a]
movsx eax, word [edi + 0x20]
inc ecx
imul ecx, dword [edi + 0x1c]
push esi
inc ecx
add eax, ecx
mov ecx, dword [esp + 0x14]
push eax
call fcn.00471e77
movzx eax, word [edi + 0x20]
add esp, 0xc
test ax, ax
js 0x484f7a
movsx ecx, ax
mov eax, dword [esp + 0x3c]
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 0xd], 0x45
jne 0x484f7a
push ebx
push ebx
push esi
push 0x54
jmp 0x48451f
cmp dword [esi + 0x78], ebx
jne 0x484c85
push 0x101ecf40
push esi
call fcn.0045c724
pop ecx
pop ecx
jmp 0x48421a
mov al, byte [edi + 1]
cmp al, 2
jne 0x484c9c
cmp dword [esi + 0x74], ebx
mov eax, esi
cmovne eax, dword [esi + 0x74]
mov byte [eax + 0x15], 1
mov al, byte [edi + 1]
mov edi, dword [edi + 8]
push ebx
cmp al, 4
jne 0x484cc6
push 4
push ebx
push 0x45
pop edx
call fcn.00471e77
mov ecx, dword [esp + 0x18]
add esp, 0xc
mov edx, eax
push ebx
push edi
call fcn.0047251c
pop ecx
pop ecx
jmp 0x484f7a
push ebx
movsx eax, al
mov edx, 0x713
push edi
push eax
mov ecx, esi
call fcn.0048e53a
jmp 0x484570
lea eax, [esp + 0x18]
mov edx, ecx
push eax
mov ecx, esi
call fcn.004850fb
mov edx, dword [edi + 0x10]
mov esi, eax
pop ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x20]
push eax
call fcn.004850fb
mov edx, dword [esp + 0x40]
or ebx, 0x20
pop ecx
mov ecx, dword [ebp + 8]
push ebx
push ecx
mov ecx, dword [esp + 0x1c]
push eax
push esi
push dword [esp + 0x20]
push dword [edi + 0x10]
call fcn.004813da
add esp, 0x18
jmp 0x484f7a
sub edx, 0x65
je 0x484f40
sub edx, 1
je 0x484f40
sub edx, 1
je 0x484f40
sub edx, 1
je 0x484f40
sub edx, 1
je 0x484f40
mov ecx, dword [edi + 0x14]
mov eax, dword [esi]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x30], ebx
lea edx, [ecx + 4]
mov dword [esp + 0x34], ebx
mov ecx, dword [ecx]
dec dword [esi + 0x38]
mov dword [esp + 0x38], ecx
mov ecx, dword [esi + 0x38]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x28], eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x3c], ecx
test ecx, ecx
je 0x484e15
mov edx, ecx
mov ecx, eax
push ebx
call fcn.00482156
mov edi, eax
mov eax, dword [esp + 0x2c]
pop ecx
mov dword [esp + 0x34], edi
cmp byte [eax + 0x51], bl
je 0x484dbe
test edi, edi
je 0x484f7a
mov edx, edi
mov ecx, eax
call fcn.00481ce8
jmp 0x484f7a
lea eax, [esp + 0x18]
mov edx, edi
push eax
mov ecx, esi
call fcn.00484156
pop ecx
mov ecx, edi
mov edx, eax
call fcn.0048118a
push 0x34
push ebx
mov cl, byte [eax]
and dword [eax + 4], 0xffffefff
mov byte [eax + 0x26], cl
mov byte [eax], 0xab
mov dword [eax + 0x1c], edx
lea eax, [esp + 0x4c]
push eax
call fcn.0050d8c0
mov ecx, dword [esp + 0x48]
lea eax, [esp + 0x50]
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov byte [esp + 0x44], 0x35
mov dword [esp + 0x50], edi
mov dword [esp + 0x30], eax
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x38]
dec eax
test eax, eax
jle 0x484eeb
dec eax
shr eax, 1
inc eax
mov dword [esp + 0x24], eax
test ecx, ecx
je 0x484e90
mov esi, dword [esi + 0x38]
mov edi, dword [esp + 0x14]
dec esi
mov eax, dword [edx]
push 0x10
push esi
push dword [esp + 0x38]
mov dword [esp + 0x60], eax
push edi
mov dword [edi + 0x38], esi
call fcn.00485783
mov edx, dword [esp + 0x20]
mov ecx, edi
push dword [ebp + 8]
mov edx, dword [edx + 0x18]
call fcn.00485173
mov edi, dword [esp + 0x20]
add esp, 0x14
mov edx, dword [esp + 0x2c]
mov ecx, edi
call fcn.00471ed0
mov edx, esi
mov ecx, edi
call fcn.0047216a
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
add edx, 0x30
sub dword [esp + 0x24], 1
mov dword [esp + 0x10], edx
jne 0x484e2e
jmp 0x484eef
mov esi, dword [esi + 0x38]
mov eax, dword [edx]
dec esi
mov edi, dword [esp + 0x14]
push 0x10
push esi
push eax
push edi
mov dword [edi + 0x38], esi
call fcn.00485783
mov edx, dword [esp + 0x20]
mov ecx, edi
push dword [ebp + 8]
mov edx, dword [edx + 0x18]
call fcn.00485173
mov edi, dword [esp + 0x20]
add esp, 0x14
mov edx, dword [esp + 0x2c]
mov ecx, edi
call fcn.00471ed0
mov edx, esi
mov ecx, edi
call fcn.0047216a
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
add edx, 0x30
sub dword [esp + 0x24], 1
mov dword [esp + 0x10], edx
jne 0x484e90
jmp 0x484eef
mov edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
test cl, 1
je 0x484f10
mov eax, dword [esp + 0x40]
push dword [ebp + 8]
imul edx, ecx, 0x18
mov ecx, esi
mov edx, dword [edx + eax - 0x14]
call fcn.00485173
pop ecx
jmp 0x484f22
push ebx
push dword [ebp + 8]
mov ecx, edi
push ebx
push 0x49
pop edx
call fcn.00471e77
add esp, 0xc
mov eax, dword [esp + 0x34]
test eax, eax
je 0x484f35
mov ecx, dword [esp + 0x28]
mov edx, eax
call fcn.00481ce8
mov edx, dword [esp + 0x2c]
mov ecx, edi
jmp 0x4846b6
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.004850fb
mov edx, dword [edi + 0x10]
mov esi, eax
pop ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x20]
push eax
call fcn.004850fb
pop ecx
mov ecx, dword [ebp + 8]
push ecx
push esi
mov edx, dword [esp + 0x18]
push eax
mov ecx, dword [esp + 0x18]
call fcn.00471e77
add esp, 0xc
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
call fcn.004865c0
mov edx, dword [esp + 0x20]
call fcn.004865c0
jmp 0x4843d2
mov esi, dword [ebp + 8]
push ebx
push esi
push ebx
push 0x49
pop edx
call fcn.00471e77
mov eax, esi
add esp, 0xc
mov ecx, dword [esp + 0xac]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0050b1bf
mov esp, ebp
pop ebp
ret