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

Disassembly:
push 0xffffffffffffffff
push 0x4adba0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
mov eax, dword [0x4d5f90]
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], eax
xor ebp, ebp
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], ebp
mov esi, dword [esp + 0x44]
mov byte [esp + 0x34], 1
xor bl, bl
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
push eax
push ecx
mov ecx, esi
call fcn.0043a9c0
mov eax, dword [esp + 0x40]
mov dword [esp + 0x44], ebp
cmp eax, ebp
jl 0x42abef
mov edi, dword [esp + 0x3c]
mov al, byte [edi + ebp]
cmp al, 0x30
jl 0x42a8cd
cmp al, 0x39
jg 0x42a8cd
test bl, bl
push eax
jne 0x42a8bf
lea ecx, [esp + 0x14]
call fcn.004a3809
jmp 0x42abda
lea ecx, [esp + 0x18]
call fcn.004a3809
jmp 0x42abda
cmp al, 0x3a
jne 0x42a8ef
test bl, bl
jne 0x42ac39
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x42ac39
mov bl, 1
jmp 0x42abda
test bl, bl
je 0x42a8f7
cmp al, 0x2a
je 0x42a911
mov ecx, dword [esp + 0x10]
push 0x4cb430
push ecx
call fcn.0047b219
add esp, 8
test eax, eax
jne 0x42aa60
mov edx, dword [esp + 0x10]
push 0x4cb430
push edx
call fcn.0047b219
add esp, 8
test eax, eax
jne 0x42a931
cmp byte [edi + ebp], 0x2a
je 0x42ac39
mov eax, dword [esp + 0x10]
push 0x4cb430
push eax
call fcn.0047b219
add esp, 8
test eax, eax
jne 0x42a955
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x14]
call fcn.004a36ce
mov al, byte [esp + 0x48]
test al, al
jne 0x42a9c7
mov edx, dword [esp + 0x18]
lea ebp, [edx + 0x78]
mov ecx, ebp
call fcn.00414960
mov edi, eax
mov eax, dword [esp + 0x10]
push eax
call fcn.0047b825
add esp, 4
cmp eax, edi
jg 0x42ac5d
mov ecx, dword [esp + 0x10]
push ecx
call fcn.0047b825
add esp, 4
mov ecx, ebp
mov edi, eax
call fcn.00414960
cmp edi, eax
jg 0x42ab03
mov eax, dword [esi + 8]
lea edx, [esp + 0x1c]
push edx
push 1
push eax
mov ecx, esi
mov dword [esp + 0x28], edi
call fcn.004167b0
mov ecx, ebp
inc edi
call fcn.00414960
cmp edi, eax
jle 0x42a9a0
jmp 0x42ab03
mov eax, dword [esp + 0x10]
push eax
call fcn.0047b825
mov ecx, dword [esp + 0x1c]
add esp, 4
mov ebx, eax
lea edi, [ecx + 0x78]
mov ecx, edi
call fcn.00414960
test eax, eax
jle 0x42aa15
mov ecx, edi
call fcn.00414960
dec eax
mov ecx, edi
push eax
call fcn.004148c0
mov ecx, eax
call fcn.00441960
lea edx, [esp + 0x20]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 8]
push edx
push 1
push eax
mov ecx, esi
call fcn.004167b0
mov ecx, edi
xor ebp, ebp
call fcn.00414960
test eax, eax
jle 0x42ab03
push ebp
mov ecx, edi
call fcn.004148c0
mov ecx, eax
call fcn.00441960
cmp eax, ebx
jl 0x42aa4f
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 8]
push ecx
push 1
push eax
mov ecx, esi
call fcn.004167b0
mov ecx, edi
inc ebp
call fcn.00414960
cmp ebp, eax
jl 0x42aa26
jmp 0x42ab03
mov al, byte [edi + ebp]
cmp al, 0x2c
je 0x42aa6f
test al, al
jne 0x42ac72
test bl, bl
je 0x42aba7
mov al, byte [esp + 0x48]
test al, al
jne 0x42ab1c
mov edx, dword [esp + 0x10]
mov eax, dword [edx - 8]
test eax, eax
je 0x42ac5d
mov eax, dword [esp + 0x14]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x42ac5d
push eax
call fcn.0047b825
mov edi, eax
mov eax, dword [esp + 0x14]
push eax
call fcn.0047b825
add esp, 8
cmp eax, edi
jg 0x42ac5d
mov ecx, dword [esp + 0x10]
push ecx
call fcn.0047b825
mov edx, dword [esp + 0x18]
mov edi, eax
push edx
call fcn.0047b825
add esp, 8
cmp edi, eax
jg 0x42ab03
mov eax, dword [esi + 8]
lea ecx, [esp + 0x1c]
push ecx
push 1
push eax
mov ecx, esi
mov dword [esp + 0x28], edi
call fcn.004167b0
mov edx, dword [esp + 0x14]
inc edi
push edx
call fcn.0047b825
add esp, 4
cmp edi, eax
jle 0x42aadb
lea ecx, [esp + 0x10]
call fcn.004a35b0
lea ecx, [esp + 0x14]
call fcn.004a35b0
xor bl, bl
jmp 0x42abda
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x42acbc
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx - 8]
test edx, edx
je 0x42acbc
push eax
call fcn.0047b825
mov edx, dword [esp + 0x18]
mov ebx, eax
push edx
call fcn.0047b825
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x20]
add esp, 8
xor ebp, ebp
lea edi, [eax + 0x78]
mov ecx, edi
call fcn.00414960
test eax, eax
jle 0x42ab03
push ebp
mov ecx, edi
call fcn.004148c0
mov ecx, eax
call fcn.00441960
cmp eax, ebx
jl 0x42ab96
cmp eax, dword [esp + 0x1c]
jg 0x42ab96
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
push ecx
push 1
push eax
mov ecx, esi
call fcn.004167b0
mov ecx, edi
inc ebp
call fcn.00414960
cmp ebp, eax
jl 0x42ab67
jmp 0x42ab03
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x42abda
push eax
call fcn.0047b825
add esp, 4
lea edx, [esp + 0x28]
mov dword [esp + 0x28], eax
mov eax, dword [esi + 8]
push edx
push 1
push eax
mov ecx, esi
call fcn.004167b0
lea ecx, [esp + 0x10]
call fcn.004a35b0
mov ebp, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
inc ebp
cmp ebp, eax
mov dword [esp + 0x44], ebp
jle 0x42a89d
mov eax, dword [esi + 4]
test eax, eax
je 0x42ac07
mov ecx, dword [esi + 8]
sub ecx, eax
test ecx, 0xfffffffc
jne 0x42ad0b
mov al, byte [esp + 0x48]
test al, al
jne 0x42ad0b
lea ecx, [esp + 0x14]
mov byte [esp + 0x34], 0
call fcn.004a3625
lea ecx, [esp + 0x10]
mov dword [esp + 0x34], 0xffffffff
call fcn.004a3625
xor al, al
jmp 0x42ad95
mov ecx, dword [esi + 4]
mov eax, dword [esi + 8]
push ecx
push eax
push eax
call fcn.0048cd60
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 8]
mov ecx, esi
push eax
push edi
call fcn.00443ee0
mov dword [esi + 8], edi
jmp 0x42ac13
mov ecx, dword [esi + 4]
mov eax, dword [esi + 8]
push ecx
push eax
push eax
call fcn.0048cd60
add esp, 0xc
mov edi, eax
jmp 0x42acd6
mov ecx, dword [esi + 8]
mov edx, dword [esi + 4]
cmp ecx, ecx
mov eax, ecx
je 0x42ac8c
mov edi, dword [eax]
add eax, 4
mov dword [edx], edi
add edx, 4
cmp eax, ecx
jne 0x42ac7e
mov eax, dword [esi + 8]
lea ecx, [esp + 0x14]
mov dword [esp + 0x48], eax
mov dword [esi + 8], edx
mov byte [esp + 0x34], 0
call fcn.004a3625
lea ecx, [esp + 0x10]
mov dword [esp + 0x34], 0xffffffff
call fcn.004a3625
xor al, al
jmp 0x42ad95
mov ecx, dword [esi + 8]
mov edi, dword [esi + 4]
cmp ecx, ecx
mov eax, ecx
je 0x42acd6
mov edx, dword [eax]
add eax, 4
mov dword [edi], edx
add edi, 4
cmp eax, ecx
jne 0x42acc8
mov eax, dword [esi + 8]
mov ecx, esi
push eax
push edi
call fcn.00443ee0
lea ecx, [esp + 0x14]
mov dword [esi + 8], edi
mov byte [esp + 0x34], 0
call fcn.004a3625
lea ecx, [esp + 0x10]
mov dword [esp + 0x34], 0xffffffff
call fcn.004a3625
xor al, al
jmp 0x42ad95
xor edi, edi
mov eax, dword [esi + 4]
test eax, eax
je 0x42ad74
mov ecx, dword [esi + 8]
mov dword [esp + 0x48], ecx
sub ecx, eax
sar ecx, 2
cmp edi, ecx
jae 0x42ad74
xor edx, edx
mov ebx, eax
test eax, eax
je 0x42ad71
cmp edx, ecx
jae 0x42ad71
cmp edi, edx
je 0x42ad3b
mov ebp, dword [eax + edi*4]
cmp ebp, dword [ebx]
je 0x42ad41
inc edx
add ebx, 4
jmp 0x42ad28
mov edx, dword [esp + 0x48]
lea ecx, [edi*4]
add ecx, eax
dec edi
lea eax, [ecx + 4]
cmp eax, edx
je 0x42ad64
sub ecx, eax
mov ebx, dword [eax]
mov dword [eax + ecx], ebx
add eax, 4
cmp eax, edx
jne 0x42ad58
mov eax, dword [esi + 8]
add eax, 0xfffffffc
mov dword [esp + 0x48], eax
mov dword [esi + 8], eax
inc edi
jmp 0x42ad0d
lea ecx, [esp + 0x14]
mov byte [esp + 0x34], 0
call fcn.004a3625
lea ecx, [esp + 0x10]
mov dword [esp + 0x34], 0xffffffff
call fcn.004a3625
mov al, 1
mov ecx, dword [esp + 0x2c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x28
ret 0x10