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

Disassembly:
push 0xffffffffffffffff
push 0x7bc8c8
mov eax, dword fs:[0]
push eax
sub esp, 0x88
mov eax, dword [0x9727c0]
xor eax, esp
mov dword [esp + 0x84], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x9727c0]
xor eax, esp
push eax
lea eax, [esp + 0x9c]
mov dword fs:[0], eax
mov ebp, ecx
mov dword [esp + 0x20], ebp
push 0x108
push 0xf
call fcn.007210a0
mov ebx, dword [esp + 0xac]
push 0x100
mov dword [esp + 0x34], eax
add eax, 8
push 0
mov cl, byte [ebx + 0x18]
push eax
mov byte [esp + 0x36], cl
mov dword [esp + 0x38], eax
call fcn.007389c0
mov eax, dword [ebx + 4]
xor edx, edx
mov ecx, dword [ebx]
mov edi, eax
sub edi, ecx
add esp, 0xc
inc edi
xor esi, esi
shr edi, 1
cmp ecx, eax
cmova edi, edx
mov dword [esp + 0x1c], edi
test edi, edi
je 0x71fe46
mov edi, dword [esp + 0x2c]
xor ebx, ebx
lea esp, [esp]
mov al, byte [ebp + 0xc]
mov byte [esp + 0x2b], al
test al, al
je 0x71fe00
mov eax, dword [ebp + 4]
mov edx, dword [eax]
movzx eax, bl
mov dl, byte [eax + edx + 0x104]
mov byte [esp + 0x1b], dl
jmp 0x71fe04
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x2b], 0
mov al, byte [ecx]
mov byte [esp + 0x14], al
je 0x71fe22
mov eax, dword [ebp + 4]
mov edx, dword [eax]
movzx eax, byte [esp + 0x14]
mov al, byte [eax + edx + 0x104]
cmp byte [esp + 0x1b], al
jne 0x71fe2c
mov byte [edi + ebx], 1
inc ebx
cmp ebx, 0x100
jb 0x71fde0
inc esi
add ecx, 2
cmp esi, dword [esp + 0x1c]
jne 0x71fdd3
mov ebx, dword [esp + 0xac]
mov edi, dword [ebx + 0x10]
mov esi, dword [ebx + 0xc]
mov dword [esp + 0x24], edi
cmp esi, edi
je 0x7201d5
mov dh, byte [ebp + 0xc]
mov dl, byte [esi]
test dh, dh
je 0x71fe70
mov eax, dword [ebp + 4]
mov ecx, dword [eax]
movzx eax, dl
mov dl, byte [eax + ecx + 0x104]
mov bl, byte [esi + 2]
test dh, dh
je 0x71fe86
mov eax, dword [ebp + 4]
mov ecx, dword [eax]
movzx eax, bl
mov bl, byte [eax + ecx + 0x104]
mov eax, dword [ebp]
add esi, 4
mov dword [esp + 0x34], esi
test dword [eax + 0x14], 0x200000
je 0x720420
mov ecx, dword [ebp + 4]
lea eax, [esp + 0x15]
push eax
lea eax, [esp + 0x18]
mov byte [esp + 0x18], dl
push eax
lea eax, [esp + 0x88]
mov byte [esp + 0x1d], 0
push eax
call fcn.0072bf00
mov ecx, dword [ebp + 4]
lea eax, [esp + 0x15]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0xa8], 0
push eax
lea eax, [esp + 0x58]
mov byte [esp + 0x1c], bl
push eax
call fcn.0072bf00
cmp dword [esp + 0x94], 0x10
lea ecx, [esp + 0x80]
mov ebp, dword [esp + 0x90]
lea edx, [esp + 0x50]
cmovae ecx, dword [esp + 0x80]
mov ebx, ebp
cmp dword [esp + 0x64], 0x10
mov eax, dword [esp + 0x60]
cmovae edx, dword [esp + 0x50]
cmp eax, ebp
mov byte [esp + 0xa4], 1
cmovb ebx, eax
test ebx, ebx
je 0x71ff84
sub ebx, 4
jb 0x71ff41
mov edi, edi
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x71ff46
add edx, 4
add ecx, 4
sub ebx, 4
jae 0x71ff30
cmp ebx, 0xfffffffc
je 0x71ff7a
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x71ff73
cmp ebx, 0xfffffffd
je 0x71ff7a
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x71ff73
cmp ebx, 0xfffffffe
je 0x71ff7a
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x71ff73
cmp ebx, 0xffffffff
je 0x71ff7a
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x71ff7a
sbb eax, eax
or eax, 1
jmp 0x71ff7c
xor eax, eax
test eax, eax
jne 0x71ff98
mov eax, dword [esp + 0x60]
cmp eax, ebp
jae 0x71ff8d
or eax, 0xffffffff
jmp 0x71ff96
xor eax, eax
cmp dword [esp + 0x60], ebp
setne al
test eax, eax
sets al
test al, al
jne 0x720447
mov edi, dword [esp + 0x20]
xor ebx, ebx
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov ecx, dword [edi + 4]
lea eax, [esp + 0x15]
push eax
lea eax, [esp + 0x18]
mov byte [esp + 0x18], bl
push eax
lea eax, [esp + 0x70]
push eax
call fcn.0072bf00
cmp dword [esp + 0x94], 0x10
lea ecx, [esp + 0x80]
mov eax, dword [esp + 0x90]
lea edx, [esp + 0x68]
cmovae ecx, dword [esp + 0x80]
mov ebx, eax
cmp dword [esp + 0x7c], 0x10
mov ebp, dword [esp + 0x78]
cmovae edx, dword [esp + 0x68]
cmp ebp, eax
cmovb ebx, ebp
test ebx, ebx
je 0x720067
sub ebx, 4
jb 0x720021
lea esp, [esp]
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x720026
add edx, 4
add ecx, 4
sub ebx, 4
jae 0x720010
cmp ebx, 0xfffffffc
je 0x72005a
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x720053
cmp ebx, 0xfffffffd
je 0x72005a
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x720053
cmp ebx, 0xfffffffe
je 0x72005a
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x720053
cmp ebx, 0xffffffff
je 0x72005a
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x72005a
sbb eax, eax
or eax, 1
jmp 0x72005c
xor eax, eax
test eax, eax
jne 0x72007e
mov eax, dword [esp + 0x90]
cmp ebp, eax
jae 0x720070
or eax, 0xffffffff
jmp 0x72007c
xor eax, eax
cmp ebp, dword [esp + 0x90]
setne al
test eax, eax
sets al
test al, al
sete al
test al, al
je 0x72013e
cmp dword [esp + 0x7c], 0x10
lea ecx, [esp + 0x68]
mov eax, dword [esp + 0x60]
lea edx, [esp + 0x50]
cmovae ecx, dword [esp + 0x68]
mov ebx, ebp
cmp dword [esp + 0x64], 0x10
cmovae edx, dword [esp + 0x50]
cmp eax, ebp
cmovb ebx, eax
test ebx, ebx
je 0x720114
sub ebx, 4
jb 0x7200d1
mov edi, edi
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x7200d6
add edx, 4
add ecx, 4
sub ebx, 4
jae 0x7200c0
cmp ebx, 0xfffffffc
je 0x72010a
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x720103
cmp ebx, 0xfffffffd
je 0x72010a
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x720103
cmp ebx, 0xfffffffe
je 0x72010a
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x720103
cmp ebx, 0xffffffff
je 0x72010a
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x72010a
sbb eax, eax
or eax, 1
jmp 0x72010c
xor eax, eax
test eax, eax
jne 0x720128
mov eax, dword [esp + 0x60]
cmp eax, ebp
jae 0x72011d
or eax, 0xffffffff
jmp 0x720126
xor eax, eax
cmp dword [esp + 0x60], ebp
setne al
test eax, eax
mov ebx, dword [esp + 0x1c]
sets al
test al, al
sete al
test al, al
je 0x720142
mov byte [esi + ebx], 1
jmp 0x720142
mov ebx, dword [esp + 0x1c]
cmp dword [esp + 0x7c], 0x10
mov byte [esp + 0xa4], 1
jb 0x72015d
push dword [esp + 0x68]
call fcn.00672cdb
add esp, 4
inc ebx
mov dword [esp + 0x1c], ebx
cmp ebx, 0x100
jb 0x71ffb1
cmp dword [esp + 0x64], 0x10
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x24]
jb 0x720189
push dword [esp + 0x50]
call fcn.00672cdb
add esp, 4
cmp dword [esp + 0x94], 0x10
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], 0
mov byte [esp + 0x50], 0
mov dword [esp + 0xa4], 0xffffffff
jb 0x7201c2
push dword [esp + 0x80]
call fcn.00672cdb
add esp, 4
mov ebp, dword [esp + 0x20]
cmp esi, edi
jne 0x71fe58
mov ebx, dword [esp + 0xac]
mov eax, dword [ebp]
mov esi, dword [ebx + 0x1c]
test dword [eax + 0x14], 0x100000
je 0x7201fb
mov eax, dword [ebp + 0x44]
and eax, esi
cmp eax, dword [ebp + 0x44]
je 0x7201f8
mov eax, dword [ebp + 0x48]
and eax, esi
cmp eax, dword [ebp + 0x48]
jne 0x7201fb
or esi, dword [ebp + 0x4c]
test esi, esi
je 0x7202a8
mov ebp, esi
xor ebx, ebx
and ebp, 0x3ff
lea ecx, [ecx]
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 4]
test ebp, ebp
je 0x720231
mov ecx, dword [edi]
movzx eax, bl
movzx eax, word [ecx + eax*2 + 0x204]
and eax, esi
test eax, 0x3ff
jne 0x720288
test esi, 0x400
je 0x72023e
cmp bl, 0x5f
je 0x720288
test esi, 0x2000
je 0x720258
mov al, bl
cmp al, 0xa
je 0x720288
cmp al, 0xd
je 0x720288
cmp al, 0xc
je 0x720288
cmp al, 0xb
je 0x720288
test esi, 0x1000
je 0x720290
mov al, bl
mov ecx, edi
push 8
push eax
mov dword [esp + 0x2c], eax
call fcn.00723d60
test al, al
je 0x720290
push 0x2000
push dword [esp + 0x28]
mov ecx, edi
call fcn.00723d60
test al, al
jne 0x720290
mov eax, dword [esp + 0x2c]
mov byte [eax + ebx], 1
inc ebx
cmp ebx, 0x100
jb 0x720210
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0xac]
mov eax, dword [ebp]
mov esi, dword [ebx + 0x20]
test dword [eax + 0x14], 0x100000
je 0x7202ce
mov eax, dword [ebp + 0x44]
and eax, esi
cmp eax, dword [ebp + 0x44]
je 0x7202cb
mov eax, dword [ebp + 0x48]
and eax, esi
cmp eax, dword [ebp + 0x48]
jne 0x7202ce
or esi, dword [ebp + 0x4c]
test esi, esi
je 0x720378
mov ebp, esi
xor ebx, ebx
and ebp, 0x3ff
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 4]
test ebp, ebp
je 0x720301
mov ecx, dword [edi]
movzx eax, bl
movzx eax, word [ecx + eax*2 + 0x204]
and eax, esi
test eax, 0x3ff
jne 0x720360
test esi, 0x400
je 0x72030e
cmp bl, 0x5f
je 0x720360
test esi, 0x2000
je 0x720328
mov al, bl
cmp al, 0xa
je 0x720360
cmp al, 0xd
je 0x720360
cmp al, 0xc
je 0x720360
cmp al, 0xb
je 0x720360
test esi, 0x1000
je 0x720358
mov al, bl
mov ecx, edi
push 8
push eax
mov dword [esp + 0x2c], eax
call fcn.00723d60
test al, al
je 0x720358
push 0x2000
push dword [esp + 0x28]
mov ecx, edi
call fcn.00723d60
test al, al
je 0x720360
mov eax, dword [esp + 0x2c]
mov byte [eax + ebx], 1
inc ebx
cmp ebx, 0x100
jb 0x7202e0
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0xac]
mov edi, dword [ebx + 0x2c]
mov esi, dword [ebx + 0x28]
mov dword [esp + 0x24], edi
cmp esi, edi
je 0x720608
lea ebx, [ebx]
mov dword [esp + 0x4c], 0xf
mov dword [esp + 0x48], 0
mov byte [esp + 0x38], 0
mov ecx, dword [ebp + 4]
lea eax, [esi + 1]
push eax
push esi
lea eax, [esp + 0x70]
mov dword [esp + 0xac], 3
push eax
call fcn.0072bf60
mov ebx, eax
lea eax, [esp + 0x38]
cmp eax, ebx
je 0x7204ba
cmp dword [esp + 0x4c], 0x10
jb 0x7203e3
push dword [esp + 0x38]
call fcn.00672cdb
add esp, 4
mov dword [esp + 0x4c], 0xf
mov dword [esp + 0x48], 0
mov byte [esp + 0x38], 0
cmp dword [ebx + 0x14], 0x10
jae 0x72048f
mov eax, dword [ebx + 0x10]
inc eax
je 0x72049b
push eax
lea eax, [esp + 0x3c]
push ebx
push eax
call fcn.00731870
add esp, 0xc
jmp 0x72049b
cmp bl, dl
jb 0x720488
movzx ecx, dl
movzx eax, bl
sub eax, ecx
inc eax
push eax
mov eax, dword [esp + 0x34]
add eax, 8
add eax, ecx
push 1
push eax
call fcn.007389c0
add esp, 0xc
jmp 0x7201c6
cmp dword [esp + 0x64], 0x10
jb 0x72045a
push dword [esp + 0x50]
call fcn.00672cdb
add esp, 4
cmp dword [esp + 0x94], 0x10
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], 0
mov byte [esp + 0x50], 0
jb 0x720488
push dword [esp + 0x80]
call fcn.00672cdb
add esp, 4
xor eax, eax
jmp 0x720633
mov eax, dword [ebx]
mov dword [esp + 0x38], eax
mov dword [ebx], 0
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x48], eax
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x4c], eax
mov dword [ebx + 0x14], 0xf
mov dword [ebx + 0x10], 0
mov byte [ebx], 0
cmp dword [esp + 0x7c], 0x10
jb 0x7204cd
push dword [esp + 0x68]
call fcn.00672cdb
add esp, 4
cmp dword [esp + 0x48], 0
je 0x72065d
mov edi, dword [esp + 0x2c]
xor ebx, ebx
mov dword [esp + 0x1c], ebx
mov ecx, dword [ebp + 4]
lea eax, [esp + 0x15]
push eax
lea eax, [esp + 0x18]
mov byte [esp + 0x18], bl
push eax
lea eax, [esp + 0x70]
mov byte [esp + 0x1d], 0
push eax
call fcn.0072bf60
cmp dword [esp + 0x7c], 0x10
lea edx, [esp + 0x68]
mov ebp, dword [esp + 0x78]
lea eax, [esp + 0x38]
cmovae edx, dword [esp + 0x68]
mov ebx, ebp
cmp dword [esp + 0x4c], 0x10
mov ecx, dword [esp + 0x48]
cmovae eax, dword [esp + 0x38]
cmp ecx, ebp
cmovb ebx, ecx
test ebx, ebx
je 0x72058a
sub ebx, 4
jb 0x720547
mov ecx, dword [eax]
cmp ecx, dword [edx]
jne 0x72054c
add eax, 4
add edx, 4
sub ebx, 4
jae 0x720536
cmp ebx, 0xfffffffc
je 0x720580
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x720579
cmp ebx, 0xfffffffd
je 0x720580
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x720579
cmp ebx, 0xfffffffe
je 0x720580
mov cl, byte [eax + 2]
cmp cl, byte [edx + 2]
jne 0x720579
cmp ebx, 0xffffffff
je 0x720580
mov al, byte [eax + 3]
cmp al, byte [edx + 3]
je 0x720580
sbb eax, eax
or eax, 1
jmp 0x720582
xor eax, eax
test eax, eax
jne 0x72059c
mov ecx, dword [esp + 0x48]
cmp ecx, ebp
jae 0x720593
or eax, 0xffffffff
jmp 0x72059a
xor eax, eax
cmp ecx, ebp
setne al
test eax, eax
mov ebx, dword [esp + 0x1c]
sete al
test al, al
je 0x7205ab
mov byte [edi + ebx], 1
cmp dword [esp + 0x7c], 0x10
mov byte [esp + 0xa4], 3
jb 0x7205c6
push dword [esp + 0x68]
call fcn.00672cdb
add esp, 4
mov ebp, dword [esp + 0x20]
inc ebx
mov dword [esp + 0x1c], ebx
cmp ebx, 0x100
jb 0x7204e2
mov edi, dword [esp + 0x24]
add esi, 2
cmp dword [esp + 0x4c], 0x10
mov dword [esp + 0xa4], 0xffffffff
jb 0x720600
push dword [esp + 0x38]
call fcn.00672cdb
add esp, 4
cmp esi, edi
jne 0x720390
cmp byte [esp + 0x2a], 0
je 0x72062f
mov edx, dword [esp + 0x2c]
mov ecx, 0x100
jmp 0x720620
cmp byte [edx], 0
lea edx, [edx + 1]
sete al
mov byte [edx - 1], al
dec ecx
jne 0x720620
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x9c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x84]
xor ecx, esp
call fcn.0073167f
add esp, 0x94
ret 8
cmp dword [esp + 0x4c], 0x10
jb 0x720488
push dword [esp + 0x38]
call fcn.00672cdb
add esp, 4
xor eax, eax
jmp 0x720633