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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x128
mov eax, dword [0x5523d4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
xor ecx, ecx
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x124], ecx
cmp dword [edi + 0x1c], ecx
je 0x4862ac
cmp esi, ecx
jne 0x4862ac
xor eax, eax
jmp 0x4862b1
mov eax, 1
lea ebx, [edi + 0x109f0]
mov dword [edi + 0x7c], eax
mov eax, ebx
mov dword [edi + 0x10b80], ecx
mov dword [edi + 0x10b84], ecx
mov dword [ebp - 0x118], ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4862d1
sub eax, edx
mov dword [edi + 0x10b88], eax
test esi, esi
je 0x48638f
mov eax, ebx
cmp byte [eax], cl
je 0x486306
mov edi, edi
cmp byte [eax], 0x5c
jne 0x4862f8
mov byte [eax], 0x2f
push eax
call fcn.004ef726
add esp, 4
cmp byte [eax], 0
jne 0x4862f0
mov al, byte [ebx]
mov dword [ebp - 0x114], ebx
cmp al, 0x2f
jne 0x48632e
mov eax, 1
add dword [ebp - 0x114], eax
mov dword [edi + 0x10b84], eax
mov word [ebp - 0x110], 0x2f
jmp 0x48638f
movzx eax, al
push eax
call fcn.00497c0b
add esp, 4
test eax, eax
je 0x48638f
cmp byte [edi + 0x109f1], 0x3a
jne 0x48638f
mov eax, ebx
mov dword [edi + 0x10b84], 1
mov cl, byte [eax]
mov dl, byte [eax + 1]
add eax, 2
cmp byte [eax], 0x2f
mov byte [ebp - 0x110], cl
mov byte [ebp - 0x10f], dl
lea ecx, [ebp - 0x10e]
mov dword [ebp - 0x114], eax
jne 0x48638c
inc eax
mov byte [ebp - 0x10e], 0x2f
lea ecx, [ebp - 0x10d]
mov dword [ebp - 0x114], eax
mov byte [ecx], 0
push 1
lea edx, [ebp - 0x110]
mov ecx, edi
call fcn.00486be0
add esp, 4
mov dword [ebp - 0x11c], eax
test eax, eax
jne 0x48698f
mov byte [ebp - 0x110], al
lea esi, [ebp - 0x110]
cmp dword [ebp + 8], eax
jne 0x4863ed
cmp dword [edi + 0x24], eax
je 0x4863d6
push 0x2f
push ebx
call fcn.00496a81
add esp, 8
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0
jne 0x4863e7
mov dword [ebp - 0x114], ebx
jmp 0x4863ed
inc dword [ebp - 0x114]
mov eax, dword [ebp - 0x114]
movzx ebx, byte [eax]
test ebx, ebx
je 0x486600
lea eax, [ebx - 0x20]
cmp eax, 0x5c
ja case.0x486411.33
movzx ecx, byte [eax + 0x4869b4]
jmp dword [ecx*4 + 0x4869a0]
mov byte [esi], 0
lea esi, [ebp - 0x110]
call fcn.00486a20
mov ecx, 0x541780
mov eax, esi
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x486450
test dl, dl
je 0x48644c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x486450
add eax, 2
add ecx, 2
test dl, dl
jne 0x486430
xor eax, eax
jmp 0x486455
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x486470
mov byte [ebp - 0x110], al
lea esi, [ebp - 0x110]
mov dword [ebp - 0x120], eax
jmp 0x486580
cmp dword [edi + 0x64], 0
jne 0x4864cb
mov ecx, 0x541784
lea eax, [ebp - 0x110]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4864a1
test dl, dl
je 0x48649d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4864a1
add eax, 2
add ecx, 2
test dl, dl
jne 0x486481
xor eax, eax
jmp 0x4864a6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4864cb
mov byte [ebp - 0x110], al
mov dword [ebp - 0x124], 1
lea esi, [ebp - 0x110]
mov dword [ebp - 0x120], eax
jmp 0x486580
cmp byte [ebp - 0x110], 0
je 0x4864fc
push 2
lea edx, [ebp - 0x110]
mov ecx, edi
call fcn.00486be0
mov dword [ebp - 0x11c], eax
and eax, 0x7f00
add esp, 4
cmp eax, 0x100
jg 0x486989
lea esi, [ebp - 0x110]
mov dword [ebp - 0x120], 0
jmp 0x486580
mov byte [esi], 0x5f
inc esi
jmp 0x486580
mov dword [ebp - 0x120], esi
mov byte [esi], 0x3b
inc esi
jmp 0x486580
cmp dword [edi + 0x3c], 0
jne case.0x486411.34
mov ecx, dword [ebp - 0x118]
mov ebx, edi
call fcn.00485c60
test eax, eax
je 0x486540
cmp dword [edi + 0x10b94], 0
jne case.0x486411.34
mov byte [esi], 0x20
inc esi
jmp 0x486580
push ebx
call fcn.00498018
add esp, 4
test eax, eax
jne 0x486558
cmp ebx, 0x7f
jb 0x486580
call fcn.004b0f5c
mov ebx, dword [ebp - 0x114]
push eax
push ebx
call fcn.004ee79a
push eax
push ebx
push esi
call fcn.004b1070
add esp, 0x14
push esi
call fcn.004ef726
add esp, 4
mov esi, eax
mov edx, dword [ebp - 0x114]
push edx
call fcn.004ef726
movzx ebx, byte [eax]
add esp, 4
mov dword [ebp - 0x114], eax
test ebx, ebx
jne 0x4863fe
cmp dword [ebp - 0x124], ebx
je 0x486600
cmp dword [edi + 0x38], ebx
jne 0x486600
mov eax, dword [ebp - 0x118]
push ebx
lea ebx, [edi + 0x88dc]
call fcn.0048b340
push eax
push 0x549ef8
lea ebx, [edi + 0x8dc]
push ebx
call fcn.00494428
add esp, 0xc
push eax
mov eax, dword [edi + 0x10b54]
push ebx
push edi
call eax
test dword [ebp - 0x11c], 0xffff80ff
jne 0x486600
mov ecx, dword [ebp - 0x11c]
and ecx, 0x7f00
or ecx, 1
mov dword [ebp - 0x11c], ecx
mov ebx, dword [ebp - 0x118]
cmp byte [ebx], 0
mov edx, dword [edi + 0x10b88]
mov dword [ebp - 0x114], edx
mov dword [ebp - 0x124], ebx
je 0x486648
cmp dword [ebp - 0x114], 0
jbe 0x486648
mov dword [ebp - 0x124], ebx
call fcn.004b0f5c
push eax
push ebx
call fcn.004ee79a
sub dword [ebp - 0x114], eax
add ebx, eax
add esp, 8
cmp byte [ebx], 0
jne 0x48661d
mov eax, dword [ebp - 0x124]
cmp byte [eax], 0x2f
jne 0x4867ab
mov esi, dword [ebp - 0x118]
push 4
mov edx, esi
mov ecx, edi
call fcn.00486be0
add esp, 4
cmp dword [edi + 0x10b80], 0
je 0x48672e
cmp dword [edi + 0x38], 0
jne 0x4866b7
mov eax, dword [ebp - 0x118]
push 0
lea ebx, [edi + 0x88dc]
lea esi, [edi + 0x8dc]
call fcn.0048b340
push eax
push 0x549f2c
push esi
call fcn.00494428
mov ecx, dword [edi + 0x10b54]
add esp, 0xc
push eax
push esi
push edi
call ecx
mov esi, dword [ebp - 0x118]
mov edx, dword [edi + 0x8d8]
mov eax, dword [edx + 0x14]
test al, 0x6f
je 0x48670d
and eax, 0x7f
push eax
push esi
call dword [0x4fb1b4]
test eax, eax
jne 0x48670d
mov eax, dword [ebp - 0x118]
push 1
lea ebx, [edi + 0x88dc]
lea esi, [edi + 0x8dc]
call fcn.0048b340
push eax
call dword [0x4fb370]
push eax
push 0x549f40
push esi
call fcn.00494428
add esp, 0x10
push eax
mov eax, dword [edi + 0x10b54]
push esi
push edi
call eax
mov eax, dword [ebp - 0x11c]
and eax, 0xffff90ff
or eax, 0x1000
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00493825
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x78], 1
jne 0x48678a
mov ecx, dword [edi + 0x8d8]
mov eax, dword [ecx + 0x14]
test al, 0x6f
je 0x48678a
and eax, 0x7f
push eax
push esi
call dword [0x4fb1b4]
test eax, eax
jne 0x48678a
mov eax, dword [ebp - 0x118]
push 1
lea ebx, [edi + 0x88dc]
lea esi, [edi + 0x8dc]
call fcn.0048b340
push eax
call dword [0x4fb370]
push eax
push 0x549f40
push esi
call fcn.00494428
mov edx, dword [edi + 0x10b54]
add esp, 0x10
push eax
push esi
push edi
call edx
mov eax, dword [ebp - 0x11c]
and eax, 0xffff82ff
or eax, 0x200
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00493825
mov esp, ebp
pop ebp
ret
mov byte [esi], 0
cmp dword [edi + 0x54], 0
jne 0x4867f1
cmp dword [ebp - 0x120], 0
je 0x4867f1
mov ebx, dword [ebp - 0x120]
movzx eax, byte [ebx + 1]
lea esi, [ebx + 1]
push eax
call fcn.00497d8a
add esp, 4
test eax, eax
je 0x4867e9
movzx ecx, byte [esi + 1]
inc esi
push ecx
call fcn.00497d8a
add esp, 4
test eax, eax
jne 0x4867d7
cmp byte [esi], 0
jne 0x4867f1
mov byte [ebx], 0
lea edx, [edi + 0x10980]
push edx
lea eax, [ebp - 0x110]
push eax
call fcn.00496b72
add esp, 8
test eax, eax
jne 0x486928
mov ecx, 0x2000
test word [edi + 0x10986], cx
je 0x486928
lea eax, [ebp - 0x110]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x486830
sub eax, edx
inc eax
je 0x486851
lea esp, [esp]
dec eax
mov dl, byte [ebp + eax - 0x110]
mov byte [ebp + eax - 0x10f], dl
jne 0x486840
mov byte [ebp - 0x110], 0x5f
push 3
lea edx, [ebp - 0x110]
mov ecx, edi
call fcn.00486be0
mov edx, dword [ebp - 0x118]
add esp, 4
push 4
mov ecx, edi
call fcn.00486be0
mov ecx, dword [edi + 0x8d8]
add esp, 4
test byte [ecx + 0x18], 0x20
je 0x486989
mov dl, byte [edi + 0x10b8c]
mov ax, word [0x549f9c]
mov cl, byte [0x549f9e]
add dl, 0x60
cmp dword [edi + 0x38], 0
mov byte [ebp - 0x120], dl
mov word [ebp - 0x11f], ax
mov byte [ebp - 0x11d], cl
jne 0x4868f4
mov eax, dword [ebp - 0x118]
push 0
lea ebx, [edi + 0x88dc]
lea esi, [edi + 0x8dc]
call fcn.0048b340
push eax
lea edx, [ebp - 0x120]
push edx
push 0x549fa0
push esi
call fcn.00494428
add esp, 0x10
push eax
mov eax, dword [edi + 0x10b54]
push esi
push edi
call eax
mov ecx, dword [ebp - 0x118]
push ecx
lea edx, [ebp - 0x120]
push edx
call dword [0x4fb45c]
test eax, eax
jne 0x48678a
push 1
lea esi, [edi + 0x8dc]
push 0x549fb4
push esi
call fcn.00494428
add esp, 8
jmp 0x48695d
cmp byte [ebp - 0x110], 0
jne 0x486858
mov eax, dword [ebp - 0x118]
push 1
lea ebx, [edi + 0x88dc]
lea esi, [edi + 0x8dc]
call fcn.0048b340
push eax
push 0x549f78
push esi
call fcn.00494428
add esp, 0xc
push eax
mov eax, dword [edi + 0x10b54]
push esi
push edi
call eax
mov eax, dword [ebp - 0x11c]
and eax, 0xffff83ff
or eax, 0x300
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00493825
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00493825
mov esp, ebp
pop ebp
ret