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

Disassembly:
push 0xffffffffffffffff
push 0x4e1278
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x50f52c]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x50f52c]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov eax, dword [esp + 0x80]
mov esi, dword [esp + 0x90]
mov ebp, edx
mov ebx, ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x28], esi
lea edi, [ebp + 0x20]
cmp eax, 0xfffffffc
je 0x4abde1
test eax, eax
je 0x4abdd5
cmp eax, dword [esp + 0x88]
je 0x4abde1
call fcn.004b32e0
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
cmp ecx, dword [esp + 0x8c]
jne 0x4abdfd
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov eax, ebx
jmp 0x4ac573
cmp dword [ebp + 8], 0
mov ebx, dword [esi]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x18], 0
jbe 0x4abfa6
jmp 0x4abe20
cmp byte [edi], 0
mov ebp, dword [esp + 0x84]
mov esi, eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], ebp
jne 0x4abeb0
cmp eax, 0xfffffffc
je 0x4abe6e
test eax, eax
jne 0x4abe4b
call fcn.004b32e0
mov eax, dword [esp + 0x80]
cmp dword [esi + 0x18], 0x10
jb 0x4abe56
mov ecx, dword [esi + 4]
jmp 0x4abe59
lea ecx, [esi + 4]
mov edx, dword [esi + 0x14]
add edx, ecx
cmp ebp, edx
jb 0x4abe6e
call fcn.004b32e0
mov eax, dword [esp + 0x80]
cmp byte [esp + 0x94], 0
mov cl, byte [ebp]
je 0x4abe87
mov edx, dword [ebx]
movzx ecx, cl
mov cl, byte [ecx + edx + 0x104]
mov dl, byte [edi]
cmp cl, dl
je 0x4abfca
test dl, dl
jne 0x4abf90
lea esp, [esp]
inc edi
cmp byte [edi], 0
je 0x4abea0
jmp 0x4abf90
cmp esi, 0xfffffffc
je 0x4abec7
test esi, esi
je 0x4abec2
cmp esi, dword [esp + 0x88]
je 0x4abec7
call fcn.004b32e0
cmp ebp, dword [esp + 0x8c]
je 0x4abf78
cmp esi, 0xfffffffc
je 0x4abefe
test esi, esi
jne 0x4abee2
call fcn.004b32e0
cmp dword [esi + 0x18], 0x10
jb 0x4abeed
mov eax, dword [esi + 4]
jmp 0x4abef0
lea eax, [esi + 4]
mov edx, dword [esi + 0x14]
add edx, eax
cmp ebp, edx
jb 0x4abefe
call fcn.004b32e0
cmp byte [esp + 0x94], 0
mov al, byte [ebp]
je 0x4abf17
mov ecx, dword [ebx]
movzx eax, al
mov al, byte [eax + ecx + 0x104]
cmp al, byte [edi]
jne 0x4abf78
inc edi
cmp esi, 0xfffffffc
je 0x4abf46
test esi, esi
jne 0x4abf2a
call fcn.004b32e0
cmp dword [esi + 0x18], 0x10
jb 0x4abf35
mov eax, dword [esi + 4]
jmp 0x4abf38
lea eax, [esi + 4]
mov ecx, dword [esi + 0x14]
add ecx, eax
cmp ebp, ecx
jb 0x4abf46
call fcn.004b32e0
inc ebp
cmp byte [edi], 0
mov dword [esp + 0x30], ebp
jne 0x4abeb0
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x1c], 0
jne 0x4abfd4
cmp esi, 0xfffffffc
je 0x4abffd
test esi, esi
je 0x4abff8
cmp esi, dword [esp + 0x80]
jmp 0x4abff6
cmp byte [edi], 0
je 0x4abf54
mov eax, edi
nop
inc eax
cmp byte [eax], 0
jne 0x4abf80
lea edi, [eax + 1]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, dword [edx + 8]
jb 0x4abe20
cmp eax, 0xfffffffc
je 0x4ac053
test eax, eax
jne 0x4abfbf
call fcn.004b32e0
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x18], 0x10
jb 0x4ac036
mov ecx, dword [eax + 4]
jmp 0x4ac039
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x1c], 0
je 0x4abfeb
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x80]
mov edx, dword [eax]
mov dword [ecx], edx
mov eax, dword [eax + 4]
jmp 0x4ac56e
cmp esi, 0xfffffffc
je 0x4abffd
test esi, esi
je 0x4abff8
cmp esi, eax
je 0x4abffd
call fcn.004b32e0
cmp ebp, dword [esp + 0x84]
jne 0x4ac022
lea ecx, [esp + 0x80]
call fcn.004254e0
mov edx, dword [eax]
mov ecx, dword [esp + 0x20]
mov dword [ecx], edx
mov eax, dword [eax + 4]
jmp 0x4ac56e
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x2c]
mov edx, dword [eax]
mov dword [ecx], edx
mov eax, dword [eax + 4]
jmp 0x4ac56e
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x4ac053
call fcn.004b32e0
mov eax, dword [esp + 0x80]
cmp byte [esp + 0x94], 0
mov ecx, dword [esp + 0x84]
mov cl, byte [ecx]
je 0x4ac07b
mov ebp, ebx
mov edx, dword [ebp]
movzx ecx, cl
mov bl, byte [ecx + edx + 0x104]
mov byte [esp + 0x17], bl
jmp 0x4ac085
mov ebp, dword [esp + 0x24]
mov byte [esp + 0x17], cl
mov bl, cl
mov esi, dword [esp + 0x1c]
mov ecx, dword [esi + 0xc]
xor edx, edx
cmp ecx, edx
jne 0x4ac09b
cmp dword [esi + 0x10], edx
je 0x4ac390
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], edx
mov byte [esp + 0x54], 0
mov dword [esp + 0x78], edx
cmp ecx, edx
je 0x4ac23f
mov edx, dword [esp + 0x28]
test dword [edx + 8], 0x200000
jne 0x4ac0d9
mov ebp, 1
mov byte [esp + 0x54], bl
mov dword [esp + 0x64], ebp
mov byte [esp + 0x55], 0
jmp 0x4ac132
lea eax, [esp + 0x19]
push eax
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x3c]
push edx
mov ecx, ebp
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], 0
call fcn.004a4740
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x5c]
mov byte [esp + 0x84], 1
call fcn.00402750
cmp dword [esp + 0x4c], 0x10
mov byte [esp + 0x78], 0
jb 0x4ac127
mov eax, dword [esp + 0x38]
push eax
call fcn.004b29fa
add esp, 4
mov ebp, dword [esp + 0x64]
mov eax, dword [esp + 0x80]
cmp dword [esi + 0xc], 0
mov dword [esp + 0x18], 0
jbe 0x4ac23f
mov ebx, dword [esp + 0x54]
cmp byte [edi], 0
jne 0x4ac168
test ebp, ebp
je 0x4ac1b0
cmp ebp, 1
jne 0x4ac168
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x4ac163
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x4ac1b0
mov eax, edi
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ac170
sub eax, edx
mov esi, eax
mov ecx, ebp
cmp ebp, esi
jb 0x4ac183
mov ecx, esi
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x4ac190
lea eax, [esp + 0x54]
push ecx
push edi
push eax
call fcn.00424d80
add esp, 0xc
test eax, eax
jne 0x4ac1aa
cmp ebp, esi
jb 0x4ac210
cmp ebp, esi
setne al
test eax, eax
jl 0x4ac210
lea esp, [esp]
inc edi
cmp byte [edi], 0
jne 0x4ac1b0
inc edi
cmp byte [edi], 0
jne 0x4ac1df
test ebp, ebp
je 0x4ac3d7
cmp ebp, 1
jne 0x4ac1df
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x4ac1d6
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x4ac3d7
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ac1e4
sub eax, edx
push eax
push edi
push ebp
push 0
lea ecx, [esp + 0x60]
call fcn.004252e0
mov ebx, dword [esp + 0x54]
test eax, eax
jle 0x4ac3d7
mov ebp, dword [esp + 0x64]
jmp 0x4ac217
inc edi
cmp byte [edi], 0
jne 0x4ac210
inc edi
inc edi
cmp byte [edi], 0
jne 0x4ac217
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
inc eax
inc edi
mov dword [esp + 0x18], eax
cmp eax, dword [ecx + 0xc]
jb 0x4ac148
mov eax, dword [esp + 0x80]
mov bl, byte [esp + 0x17]
mov ecx, dword [esp + 0x1c]
cmp dword [ecx + 0x10], 0
je 0x4ac350
lea edx, [esp + 0x19]
push edx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x30]
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], 0
call fcn.004a8300
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x5c]
mov byte [esp + 0x84], 2
call fcn.00402750
cmp dword [esp + 0x4c], 0x10
mov byte [esp + 0x78], 0
jb 0x4ac29d
mov edx, dword [esp + 0x38]
push edx
call fcn.004b29fa
add esp, 4
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x10]
xor ebx, ebx
mov dword [esp + 0x4c], 0xf
mov dword [esp + 0x48], ebx
mov byte [esp + 0x38], bl
mov dword [esp + 0x28], eax
cmp eax, ebx
jbe 0x4ac345
mov ebp, dword [esp + 0x64]
cmp byte [edi], 0
jne 0x4ac2f0
test ebp, ebp
je 0x4ac45b
cmp ebp, 1
jne 0x4ac2f0
cmp dword [esp + 0x68], 0x10
mov eax, dword [esp + 0x54]
jae 0x4ac2e7
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x4ac45b
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ac2f5
sub eax, edx
mov esi, eax
mov ecx, ebp
cmp ebp, esi
jb 0x4ac308
mov ecx, esi
cmp dword [esp + 0x68], 0x10
mov eax, dword [esp + 0x54]
jae 0x4ac317
lea eax, [esp + 0x54]
push ecx
push edi
push eax
call fcn.00424d80
add esp, 0xc
test eax, eax
jne 0x4ac337
cmp ebp, esi
jb 0x4ac337
cmp ebp, esi
setne al
test eax, eax
je 0x4ac45b
inc edi
cmp byte [edi], 0
jne 0x4ac337
inc ebx
inc edi
cmp ebx, dword [esp + 0x28]
jb 0x4ac2c6
mov bl, byte [esp + 0x17]
mov eax, dword [esp + 0x80]
cmp dword [esp + 0x68], 0x10
mov dword [esp + 0x78], 0xffffffff
jb 0x4ac373
mov edx, dword [esp + 0x54]
push edx
call fcn.004b29fa
mov eax, dword [esp + 0x84]
add esp, 4
mov esi, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], 0
mov byte [esp + 0x54], 0
mov ecx, dword [esi + 0x14]
test ecx, 0x3ff
je 0x4ac3b3
mov edi, dword [ebp]
movzx edx, bl
movzx edx, word [edi + edx*2 + 0x204]
and edx, ecx
test edx, 0x3ff
jne 0x4ac3c8
test ecx, 0x400
je 0x4ac4db
cmp bl, 0x5f
jne 0x4ac4db
cmp byte [esi + 0x1c], 0
jne 0x4ac561
jmp 0x4ac51d
mov edx, dword [esp + 0x1c]
cmp byte [edx + 0x1c], 0
mov eax, dword [esp + 0x80]
jne 0x4ac434
cmp eax, 0xfffffffc
je 0x4ac42d
test eax, eax
jne 0x4ac401
call fcn.004b32e0
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x54]
cmp dword [eax + 0x18], 0x10
jb 0x4ac40c
mov ecx, dword [eax + 4]
jmp 0x4ac40f
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x4ac42d
call fcn.004b32e0
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x54]
inc dword [esp + 0x84]
cmp dword [esp + 0x68], 0x10
mov esi, dword [esp + 0x20]
mov dword [esi], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 4], eax
jb 0x4ac454
push ebx
call fcn.004b29fa
add esp, 4
mov eax, esi
jmp 0x4ac573
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x1c], 0
mov eax, dword [esp + 0x80]
jne 0x4ac4b0
cmp eax, 0xfffffffc
je 0x4ac4a9
test eax, eax
jne 0x4ac481
call fcn.004b32e0
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x18], 0x10
jb 0x4ac48c
mov ecx, dword [eax + 4]
jmp 0x4ac48f
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x4ac4a9
call fcn.004b32e0
mov eax, dword [esp + 0x80]
inc dword [esp + 0x84]
cmp dword [esp + 0x68], 0x10
mov esi, dword [esp + 0x20]
mov dword [esi], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 4], eax
jb 0x4ac454
mov ecx, dword [esp + 0x54]
push ecx
call fcn.004b29fa
add esp, 4
mov eax, esi
jmp 0x4ac573
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x4ac517
test ecx, 0x3ff
je 0x4ac502
mov edi, dword [ebp]
movzx edx, bl
movzx edx, word [edi + edx*2 + 0x204]
and edx, ecx
test edx, 0x3ff
jne 0x4ac517
test ecx, 0x400
je 0x4ac50f
cmp bl, 0x5f
je 0x4ac517
cmp byte [esi + 0x1c], 0
jne 0x4ac561
jmp 0x4ac51d
cmp byte [esi + 0x1c], 0
je 0x4ac561
cmp eax, 0xfffffffc
je 0x4ac55a
test eax, eax
jne 0x4ac532
call fcn.004b32e0
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x18], 0x10
jb 0x4ac53d
mov ecx, dword [eax + 4]
jmp 0x4ac540
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x4ac55a
call fcn.004b32e0
mov eax, dword [esp + 0x80]
inc dword [esp + 0x84]
mov ecx, dword [esp + 0x20]
mov dword [ecx], eax
mov eax, dword [esp + 0x84]
mov dword [ecx + 4], eax
mov eax, ecx
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.004b3057
add esp, 0x68
ret 0x18