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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x71412eee
sub esp, 0x5c
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov dword [esp + 0x44], ecx
mov edx, dword [esp + 0x60]
add edx, 0x34
mov dword [esp + 0x38], edx
test ecx, ecx
je 0x71412961
mov ecx, dword [ecx + 0xc]
add ecx, 0xffff0210
neg ecx
cmp ecx, edx
jge 0x714129a9
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
lea eax, [0x71412f00]
mov dword [esp + 0x50], eax
lea eax, [esp + 0x44]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.7141e800
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x6c]
mov dword [ecx], eax
call fcn.7141fb90
mov eax, dword [esp + 0x44]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 4]
mov edx, dword [esp]
shr edx, 6
mov ebx, ecx
shl ecx, 0x1a
or ecx, edx
shr ebx, 6
mov edx, dword [eax + 4]
mov ebp, dword [eax + 8]
mov esi, ecx
sub ecx, edx
mov dword [esp + 0x2c], ecx
mov edi, ebx
sbb ebx, ebp
test ebx, ebx
sete al
test ecx, ecx
sete cl
and eax, ecx
test al, al
je 0x714129fb
add edx, 1
adc ebp, 0
mov eax, 1
xor ebx, ebx
jmp 0x71412a03
mov ebp, edi
mov edx, esi
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x48]
mov dword [esi + 4], edx
mov dword [esi + 8], ebp
mov edx, dword [esp + 0x74]
test edx, edx
je 0x71412a1b
mov ebp, dword [esp + 0x78]
jmp 0x71412a23
mov ebp, dword [esp + 0x78]
test ebp, ebp
jl 0x71412a2f
mov esi, dword [esp + 0x80]
lea edi, [esi + 1]
jmp 0x71412a38
mov esi, dword [esp + 0x80]
mov edi, esi
xchg edi, eax
cmp al, 3
xchg edi, eax
jbe 0x71412a44
mov edi, 3
xchg edi, eax
mov byte [esp + 0x1f], al
xchg edi, eax
mov ecx, ebp
mov ebp, dword [esp + 0x44]
mov edx, dword [ebp + 0xc]
shl edi, 6
movzx esi, byte [esp + 0x70]
or edi, esi
cmp edx, 0xfdf0
jae 0x71412ee1
mov dword [esp + 0x34], edx
xchg edi, eax
mov byte [ebp + edx + 0x210], al
xchg edi, eax
inc dword [ebp + 0xc]
movzx ebp, byte [esp + 0x1f]
xchg ebp, eax
cmp al, 3
xchg ebp, eax
jne 0x71412aa3
mov dword [esp + 0x30], ebx
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x40], ebp
mov esi, dword [ebp + 0xc]
xor edi, edi
xor edi, edi
mov dword [esp + 0x28], edi
xor edi, edi
jmp 0x71412e51
xor ebp, ebp
mov dword [esp + 0x4c], ebp
mov esi, dword [esp + 0x44]
mov edi, dword [esi + 0xc]
jmp 0x71412ad8
mov edx, eax
or eax, 0xffffff80
mov byte [esi + edi + 0x210], al
shr edx, 7
mov eax, dword [esp + 0x24]
mov ebx, eax
shl eax, 0x19
or eax, edx
shr ebx, 7
inc edi
mov edx, dword [esp + 0x34]
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x24], ebx
cmp eax, 0x80
xchg ebp, ebx
setae bl
xchg ebp, ebx
test ebx, ebx
seta dl
sete bl
and ebx, ebp
or edx, ebx
test dl, dl
je 0x71412b05
cmp edi, 0xfdf0
jb 0x71412ab2
jmp 0x71412e15
cmp edi, 0xfdf0
jae 0x71412e09
mov byte [esi + edi + 0x210], al
lea edx, [edi + 1]
mov dword [esi + 0xc], edx
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x7c]
xor eax, eax
jmp 0x71412b4c
mov ebp, dword [esp + 0x3c]
xchg edi, eax
mov byte [ebp + ebx + 0x210], al
xchg edi, eax
lea esi, [ebx + 1]
mov dword [ebp + 0xc], esi
inc eax
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x7c]
cmp edx, eax
jle 0x71412b75
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x3c], ebp
lea esi, [ebx + eax*8]
mov edi, dword [esi]
mov esi, dword [esi + 4]
mov ebx, dword [ebp + 0xc]
jmp 0x71412dbc
cmp ebx, 0xfdf0
jb 0x71412b2d
jmp 0x71412df1
mov edx, dword [esp + 0x74]
test edx, edx
je 0x71412b8b
mov ebx, dword [esp + 0x44]
mov ebp, dword [ebx + 0xc]
xor eax, eax
jmp 0x71412d30
test ecx, ecx
jne 0x71412b9f
mov edx, dword [esp + 0x44]
mov ebx, dword [edx + 0xc]
xor eax, eax
xor ecx, ecx
jmp 0x71412cb2
jle 0x71412bdf
mov eax, dword [esp + 0x44]
test byte [eax], al
mov edx, dword [esp + 0x64]
mov dword [esp], edx
add eax, 0x10
mov dword [esp + 4], eax
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 0xc], pe_nt_image_headers32
mov dword [esp + 0x10], ecx
call fcn.71412f50
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
jmp 0x71412c35
mov eax, dword [esp + 0x44]
mov eax, dword [eax + 0xc]
mov ecx, dword [esp + 0x34]
sub eax, ecx
mov ecx, dword [esp + 0x38]
cmp eax, ecx
jg 0x71412c05
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x71412c01
add eax, 0xfffffffe
mov byte [ecx], al
add esp, 0x5c
ret
lea eax, [0x7149ae0b]
mov dword [esp], eax
mov dword [esp + 4], 0x1d
call fcn.713f4a70
mov ebp, edx
or edx, 0xffffff80
mov byte [eax + ecx + 0x210], dl
shr ebp, 7
mov edx, ebx
shl edx, 0x19
or edx, ebp
shr ebx, 7
inc ecx
test ebx, ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp edx, 0x80
xchg esi, ebx
setae bl
xchg esi, ebx
test ebx, ebx
xchg edi, ebx
seta bl
xchg edi, ebx
and esi, ebp
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x71412c68
cmp ecx, 0xfdf0
jb 0x71412c1b
jmp 0x71412c8c
cmp ecx, 0xfdf0
jae 0x71412c80
mov byte [eax + ecx + 0x210], dl
inc ecx
mov dword [eax + 0xc], ecx
jmp 0x71412bdf
mov eax, ecx
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, ecx
mov ecx, 0xfdf0
call fcn.7141fdc0
mov ebp, eax
or eax, 0xffffff80
mov byte [edx + ebx + 0x210], al
shr ebp, 7
mov eax, ecx
shl eax, 0x19
or eax, ebp
shr ecx, 7
inc ebx
test ecx, ecx
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg esi, ebx
seta bl
xchg esi, ebx
cmp eax, 0x80
xchg edi, ebx
setae bl
xchg edi, ebx
and edi, ebp
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x71412ce2
cmp ebx, 0xfdf0
jb 0x71412c98
jmp 0x71412d08
cmp ebx, 0xfdf0
jae 0x71412cfc
mov byte [edx + ebx + 0x210], al
lea eax, [ebx + 1]
mov dword [edx + 0xc], eax
jmp 0x71412bdf
mov eax, ebx
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, ebx
mov ecx, 0xfdf0
call fcn.7141fdc0
mov esi, edx
or edx, 0xffffff80
mov byte [ecx + ebp + 0x210], dl
shr esi, 7
mov edx, eax
shl edx, 0x19
or edx, esi
shr eax, 7
inc ebp
mov ebx, ecx
test eax, eax
xchg esi, ebx
sete bl
xchg esi, ebx
xchg edi, ebx
seta bl
xchg edi, ebx
cmp edx, 0x80
mov ecx, ebx
setae bl
and ebx, esi
or edi, ebx
xchg edi, eax
test al, al
xchg edi, eax
je 0x71412d5f
cmp ebp, 0xfdf0
jb 0x71412d14
jmp 0x71412d85
cmp ebp, 0xfdf0
jae 0x71412d79
mov byte [ecx + ebp + 0x210], dl
lea eax, [ebp + 1]
mov dword [ecx + 0xc], eax
jmp 0x71412bdf
mov eax, ebp
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, ebp
mov ecx, 0xfdf0
call fcn.7141fdc0
mov edx, edi
or edi, 0xffffff80
mov ebp, dword [esp + 0x3c]
xchg edi, eax
mov byte [ebp + ebx + 0x210], al
xchg edi, eax
shr edx, 7
mov edi, dword [esp + 0x20]
mov esi, edi
shl edi, 0x19
or edi, edx
shr esi, 7
inc ebx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x20], esi
cmp edi, 0x80
setae dl
test esi, esi
xchg esi, ebx
sete bl
xchg esi, ebx
xchg ebp, ebx
seta bl
xchg ebp, ebx
and esi, edx
or ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x71412b68
cmp ebx, 0xfdf0
jb 0x71412d91
jmp 0x71412dfd
mov eax, ebx
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, ebx
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, edi
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, edi
mov ecx, 0xfdf0
call fcn.7141fdc0
mov edx, edi
or edi, 0xffffff80
mov ebp, dword [esp + 0x40]
xchg edi, eax
mov byte [ebp + esi + 0x210], al
xchg edi, eax
shr edx, 7
mov edi, dword [esp + 0x28]
mov ebx, edi
shl edi, 0x19
or edi, edx
shr ebx, 7
inc esi
mov edx, dword [esp + 0x34]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
test edx, edx
seta bl
sete dl
cmp edi, 0x80
xchg ebp, ebx
setae bl
xchg ebp, ebx
and ebp, edx
or ebx, ebp
test bl, bl
je 0x71412e7c
cmp esi, 0xfdf0
jb 0x71412e21
jmp 0x71412ed5
cmp esi, 0xfdf0
jae 0x71412ec9
mov edx, dword [esp + 0x40]
xchg edi, eax
mov byte [edx + esi + 0x210], al
xchg edi, eax
lea ebx, [esi + 1]
mov dword [edx + 0xc], ebx
mov edx, dword [esp + 0x44]
mov ebx, dword [edx + 0xc]
lea ebp, [ebx - 1]
cmp ebp, 0xfdf0
jae 0x71412ebd
lea ebp, [ebx + edx + 0x20f]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
jmp 0x71412aa5
mov eax, ebp
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, esi
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, esi
mov ecx, 0xfdf0
call fcn.7141fdc0
mov eax, edx
mov ecx, 0xfdf0
call fcn.7141fdc0
nop
call fcn.7141e910
jmp fcn.71412920