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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword [ebp + 8]
sub esp, 0xc
push ebx
push esi
push edi
mov esi, edx
mov ebx, eax
cdq
mov edi, ecx
push 4
push edx
push eax
lea eax, [esp + 0x20]
mov dword [esi + 0x10], 0xffffffff
push eax
mov dword [esi + 0x18], 0xffffffff
mov dword [esi + 0x1c], 0xffffffff
mov eax, dword [edi]
push edi
call eax
add esp, 0x14
cmp eax, 4
jne 0x41434c
mov eax, dword [esp + 0x14]
mov edx, ebx
movzx ecx, al
shl ecx, 8
movzx eax, ah
or ecx, eax
movzx eax, byte [esp + 0x16]
shl ecx, 8
or ecx, eax
movzx eax, byte [esp + 0x17]
shl ecx, 8
or ecx, eax
mov eax, ecx
cmp ecx, 0x47535452
je 0x41439a
and eax, 0xffff0000
cmp eax, 0x50540000
je 0x4143a4
add ebx, 4
push 4
mov eax, ebx
cdq
push edx
push eax
lea eax, [esp + 0x20]
push eax
mov eax, dword [edi]
push edi
call eax
add esp, 0x14
cmp eax, 4
je 0x41436d
or ecx, 0xffffffff
jmp 0x414390
mov eax, dword [esp + 0x14]
movzx ecx, al
shl ecx, 8
movzx eax, ah
or ecx, eax
movzx eax, byte [esp + 0x16]
shl ecx, 8
or ecx, eax
movzx eax, byte [esp + 0x17]
shl ecx, 8
or ecx, eax
mov edx, ebx
cmp ecx, 0x47535452
jne 0x4143a4
lea ebx, [edx + 8]
mov eax, 8
jmp 0x4143f0
and ecx, 0xffff0000
cmp ecx, 0x50540000
jne case.0x41484a.11
push 2
lea eax, [ebx + 2]
cdq
push edx
push eax
lea eax, [esp + 0x1c]
push eax
mov eax, dword [edi]
push edi
call eax
add esp, 0x14
cmp eax, 2
je 0x4143d5
or eax, 0xffffffff
jmp 0x4143ea
mov ax, word [esp + 0x10]
movzx ecx, ah
movzx eax, al
shl cx, 8
or cx, ax
movzx eax, cx
add ebx, 4
movzx eax, ax
mov dword [esi + 0xc], eax
mov dword [esp + 0x14], ebx
mov ebx, dword [ebp + 0xc]
lea ebx, [ebx]
mov eax, dword [esp + 0x14]
mov ecx, eax
sub ecx, dword [ebp + 8]
cmp ecx, ebx
jge 0x414678
cdq
push 1
push edx
push eax
lea eax, [esp + 0x1c]
push eax
mov eax, dword [edi]
push edi
call eax
add esp, 0x14
cmp eax, 1
je 0x41442d
or cl, 0xff
jmp 0x414431
mov cl, byte [esp + 0x10]
mov edx, dword [esp + 0x14]
movzx eax, cl
inc edx
mov dword [esp + 0x14], edx
movzx eax, byte [eax + 0x414964]
jmp dword [eax*4 + 0x4148e4]
lea edx, [esp + 0x14]
mov ecx, edi
call fcn.004141d0
jmp 0x414400
lea edx, [esp + 0x14]
mov ecx, edi
call fcn.004141d0
mov dword [esi + 0x5c], eax
jmp 0x414400
mov edx, dword [esi + 8]
cmp edx, 6
jg case.0x41484a.11
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x24]
mov dword [esi + 0x78], eax
cmp ecx, 2
je 0x4146b5
cmp ecx, 3
je 0x4146b5
cmp ecx, 4
je 0x4146b5
cmp ecx, 6
je 0x4146b5
cmp ecx, 9
je 0x4146b5
cmp ecx, 0xe
je 0x4146b5
cmp ecx, 0x10
je 0x4146b5
cmp ecx, 8
jne 0x4146bc
mov dword [esi + 0x74], 1
test edx, edx
jne 0x4146c7
mov dword [esi + 8], 1
mov eax, dword [esi + 0x10]
cmp eax, 0xffffffff
jne 0x414712
cmp ecx, 0x14
ja case.0x41484a.11
jmp dword [ecx*4 + 0x414a64]
mov dword [esi + 0x10], 0
xor eax, eax
jmp 0x414712
mov dword [esi + 0x10], 1
mov eax, 1
jmp 0x414712
mov dword [esi + 0x10], 3
mov eax, 3
jmp 0x414712
mov dword [esi + 0x10], 2
mov eax, 2
mov edx, dword [esi + 0x18]
cmp edx, 0xffffffff
jne 0x414757
test eax, eax
jne 0x4147e3
cmp ecx, 4
ja case.0x41484a.11
jmp dword [ecx*4 + 0x414ab8]
mov dword [esi + 0x18], 6
mov edx, 6
jmp 0x414757
mov dword [esi + 0x18], 5
mov edx, 5
jmp 0x414757
mov dword [esi + 0x18], 0
xor edx, edx
cmp dword [esi + 0x1c], 0xffffffff
jne 0x414834
cmp edx, 9
ja case.0x41484a.11
jmp dword [edx*4 + 0x414acc]
mov eax, dword [esi + 0x14]
test ecx, ecx
jne 0x414794
cmp eax, 8
jne 0x414787
mov eax, 2
mov dword [esi + 0x1c], eax
jmp 0x4147e3
xor eax, eax
cmp dword [esi + 0x74], eax
setne al
mov dword [esi + 0x1c], eax
jmp 0x4147e3
cmp eax, 8
jne 0x4147a3
mov eax, 9
mov dword [esi + 0x1c], eax
jmp 0x4147e3
mov eax, dword [esi + 0x74]
neg eax
sbb eax, eax
add eax, 8
mov dword [esi + 0x1c], eax
jmp 0x4147e3
mov dword [esi + 0x1c], 6
jmp 0x4147e3
mov dword [esi + 0x1c], 5
jmp 0x4147e3
test ecx, ecx
je 0x4147d2
mov eax, 0xa
cmp ecx, 3
jne 0x4147d7
mov eax, 3
mov dword [esi + 0x1c], eax
jmp 0x4147e3
mov dword [esi + 0x1c], 4
cmp dword [esi + 0x1c], 0xffffffff
jne 0x414834
cmp ecx, 0x14
ja case.0x41484a.11
movzx eax, byte [ecx + 0x414b10]
jmp dword [eax*4 + 0x414af4]
mov dword [esi + 0x1c], 6
jmp 0x414834
mov dword [esi + 0x1c], 5
jmp 0x414834
mov dword [esi + 0x1c], 7
jmp 0x414834
mov dword [esi + 0x1c], 8
jmp 0x414834
mov dword [esi + 0x1c], 0xa
jmp 0x414834
mov dword [esi + 0x1c], 0x12
cmp dword [esi + 4], 0
jne 0x41487c
cmp ecx, 0x14
ja case.0x41484a.11
movzx eax, byte [ecx + 0x414b40]
jmp dword [eax*4 + 0x414b28]
mov dword [esi + 4], 0xbb80
jmp 0x41487c
mov dword [esi + 4], 0x5dc0
jmp 0x41487c
mov dword [esi + 4], 0x5622
jmp 0x41487c
mov dword [esi + 4], 0xac44
jmp 0x41487c
mov dword [esi + 4], 0x7d00
mov edx, dword [esi + 0x10]
cmp edx, 3
je 0x41489b
cmp edx, 2
jne 0x414897
test ecx, ecx
je 0x41489b
cmp ecx, 3
je 0x41489b
cmp ecx, 8
je 0x41489b
xor eax, eax
jmp 0x4148a0
mov eax, 1
cmp dword [ebp + 0x10], 0
mov dword [esi + 0x80], eax
jne 0x4148c6
mov edi, dword [esi + 0x1c]
cmp edi, 0x12
jne 0x4148b9
cmp ecx, 0x14
jmp 0x4148c0
cmp edi, 0xa
jne 0x4148c6
test eax, eax
jne 0x4148c6
or dword [esi + 0x7c], 1
test edx, edx
jle 0x4148ce
or dword [esi + 0x7c], 4
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret