Function at 0x71676b
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
sub esp, 0x80
test dword [0x100b1eec], 0x100
push ebx
mov ebx, dword [esp + 0x88]
push esi
push edi
je 0x7156ed
mov eax, dword [esp + 0x94]
push ebx
push eax
push 0x10080dac
call fcn.007290db
add esp, 0xc
push 0x7c
lea ecx, [esp + 0x14]
push 0
push ecx
call fcn.0075d0bb
add esp, 0xc
call fcn.0070978b
mov edi, dword [esp + 0x94]
push 0
push 0x21
lea edx, [esp + 0x18]
push edx
push 0
push ebx
push edi
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], 0x808
call fcn.0070938b
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x715758
push 0x7e
push esi
call fcn.00727cdb
add esp, 4
push eax
push esi
push edi
push 0x10080d7c
call fcn.007290db
add esp, 0x14
pop edi
pop esi
pop ebx
add esp, 0x80
ret
test dword [esp + 0x78], 0x1000
je 0x715906
push ebx
mov ecx, 0x100b1c18
call fcn.00730ebb
test eax, eax
jne 0x715906
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x64]
push ebp
push eax
push ecx
push edx
push ebx
push edi
push 0x10080d48
call fcn.007290db
mov eax, dword [esp + 0x80]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
add esp, 0x18
mov dword [esp + 0x10], ebp
cmp eax, 8
je 0x715949
cmp eax, 0x10
je 0x71585d
cmp eax, 0x20
jne 0x715905
call fcn.0075d77d
xor edx, edx
test ebp, ebp
jle 0x7157f9
jmp 0x7157db
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x38]
imul ecx, edx
sar ecx, 2
lea edi, [edi + ecx*4]
test esi, esi
jle 0x7157f4
mov ecx, esi
rep stosd dword es:[edi], eax
inc edx
cmp edx, ebp
jl 0x7157db
xor edx, edx
test ebp, ebp
jle 0x715905
jmp 0x71580b
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x38]
imul eax, edx
sar eax, 2
lea edi, [ecx + eax*4]
xor eax, eax
test esi, esi
jle 0x715839
jmp 0x71582b
mov dword [edi + eax*4], 0
add eax, 0x10
cmp eax, esi
jl 0x71582b
mov eax, edx
and eax, 0x8000000f
jns 0x715847
dec eax
or eax, 0xfffffff0
inc eax
jne 0x715853
test esi, esi
jle 0x715853
mov ecx, esi
xor eax, eax
rep stosd dword es:[edi], eax
inc edx
cmp edx, ebp
jl 0x71580b
jmp 0x715905
call fcn.0075d77d
mov ebx, eax
and ebx, 0x7fff
xor edx, edx
test ebp, ebp
jle 0x7158a4
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x38]
imul ecx, edx
sar ecx, 1
lea edi, [eax + ecx*2]
test esi, esi
jle 0x71589f
mov eax, ebx
movzx ebp, ax
mov eax, ebp
shl ebp, 0x10
or eax, ebp
mov ebp, dword [esp + 0x10]
mov ecx, esi
shr ecx, 1
rep stosd dword es:[edi], eax
adc ecx, ecx
rep stosw word es:[edi], ax
inc edx
cmp edx, ebp
jl 0x715870
xor edx, edx
test ebp, ebp
jle 0x7158fe
nop
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x38]
imul ecx, edx
sar ecx, 1
lea edi, [eax + ecx*2]
xor eax, eax
test esi, esi
jle 0x7158ce
xor ecx, ecx
mov word [edi + eax*2], cx
add eax, 0x10
cmp eax, esi
jl 0x7158c1
mov eax, edx
and eax, 0x8000000f
jns 0x7158dc
dec eax
or eax, 0xfffffff0
inc eax
jne 0x7158f9
test esi, esi
jle 0x7158f9
xor eax, eax
movzx ebx, ax
mov eax, ebx
shl ebx, 0x10
or eax, ebx
mov ecx, esi
shr ecx, 1
rep stosd dword es:[edi], eax
adc ecx, ecx
rep stosw word es:[edi], ax
inc edx
cmp edx, ebp
jl 0x7158ab
mov ebx, dword [esp + 0x94]
pop ebp
mov edx, dword [esp + 0x94]
push 0
push ebx
push edx
call fcn.0070933b
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x71593f
push 0xba
push esi
call fcn.00727cdb
add esp, 4
push eax
push esi
push ebx
push 0x10080d10
call fcn.007290db
add esp, 0x14
pop edi
pop esi
pop ebx
add esp, 0x80
ret
call fcn.0075d77d
xor edi, edi
mov byte [esp + 0x10], al
test ebp, ebp
jle 0x715982
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
imul eax, edi
add eax, dword [esp + 0x38]
test esi, esi
jle 0x715976
push esi
push ebx
push eax
call fcn.0075d0bb
add esp, 0xc
inc edi
cmp edi, ebp
jl 0x71595c
mov ebx, dword [esp + 0x94]
xor edi, edi
test ebp, ebp
jle 0x715905
mov eax, dword [esp + 0x24]
imul eax, edi
add eax, dword [esp + 0x38]
xor ecx, ecx
test esi, esi
jle 0x7159a8
mov byte [ecx + eax], 0
add ecx, 0x10
cmp ecx, esi
jl 0x71599d
mov ecx, edi
and ecx, 0x8000000f
jns 0x7159b7
dec ecx
or ecx, 0xfffffff0
inc ecx
jne 0x7159c9
test esi, esi
jle 0x7159c9
push esi
push 0
push eax
call fcn.0075d0bb
add esp, 0xc
inc edi
cmp edi, ebp
jl 0x71598c
jmp 0x715905
sub esp, 0x384
mov eax, dword [0x100abd0c]
xor eax, esp
mov dword [esp + 0x380], eax
test dword [0x100b1eec], 0x100
push ebx
push ebp
mov ebp, dword [esp + 0x390]
push esi
push edi
mov dword [esp + 0x10], ebp
je 0x715a20
mov eax, dword [esp + 0x39c]
push ebp
push eax
push 0x10080ec4
call fcn.007290db
add esp, 0xc
cmp dword [0x100a8414], 0
je 0x715b4e
call fcn.00728ddb
push eax
lea ecx, [esp + 0x18c]
push 0x1007a6f0
push ecx
call fcn.0075c6cc
mov esi, dword [0x1007941c]
add esp, 0xc
lea edx, [esp + 0x188]
push edx
push 0
push 0x1007a6e8
push 0x1007a6e0
call esi
mov dword [0x100aeac4], eax
lea eax, [esp + 0x188]
push eax
push 0
push 0x1007a6d8
push 0x1007a6e0
call esi
lea ecx, [esp + 0x188]
push ecx
push 0
push 0x1007a6d0
push 0x1007a6e0
mov dword [0x100aeac0], eax
call esi
lea edx, [esp + 0x188]
push edx
push 0
push 0x1007a6c8
push 0x1007a6e0
mov dword [0x100aeabc], eax
call esi
mov dword [0x100aeab8], eax
call fcn.00728ddb
push eax
push 0x1007a6b8
lea eax, [esp + 0x294]
push 0x104
push eax
call fcn.0075c749
add esp, 0x10
push 0
lea ecx, [esp + 0x290]
push ecx
call dword [0x10079420]
mov ecx, dword [0x100b1ee0]
xor eax, eax
mov dword [0x100aeab4], eax
test ecx, 0x200
je 0x715b09
mov eax, 1
mov dword [0x100aeab4], eax
test ecx, 0x1000
je 0x715b1b
mov eax, 2
mov dword [0x100aeab4], eax
mov edx, dword [0x100aeab8]
mov ecx, dword [0x100aeabc]
push eax
mov eax, dword [0x100aeac0]
push edx
mov edx, dword [0x100aeac4]
push eax
push ecx
push edx
push 0x1007a680
call fcn.007290db
add esp, 0x18
mov dword [0x100a8414], 0
push 0x7c
lea eax, [esp + 0x28]
push 0
push eax
call fcn.0075d0bb
add esp, 0xc
call fcn.0070978b
mov edi, dword [esp + 0x39c]
push 0
push 0x21
lea ecx, [esp + 0x2c]
push ecx
push 0
push ebp
push edi
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0x808
call fcn.0070938b
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x715bb6
push 0xde
push esi
call fcn.00727cdb
add esp, 4
push eax
push esi
push 0x10080e98
call fcn.007290db
add esp, 0x10
jmp 0x715dda
test dword [esp + 0x8c], 0x1000
je 0x715da1
push ebp
mov ecx, 0x100b1c18
call fcn.00730ebb
test eax, eax
jne 0x715da1
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x78]
push edx
push eax
push ecx
push ebp
push edi
push 0x10080e64
call fcn.007290db
mov eax, dword [0x100aeac4]
mov ebx, dword [esp + 0x48]
add esp, 0x18
test eax, eax
je 0x715c09
cmp ebx, eax
jl 0x715c1a
mov eax, dword [0x100aeabc]
mov edi, dword [esp + 0x2c]
test eax, eax
je 0x715c2c
cmp edi, eax
jge 0x715c2c
push 0x1007a65c
call fcn.007290db
add esp, 4
jmp 0x715da1
mov eax, dword [0x100aeac0]
test eax, eax
je 0x715c39
cmp ebx, eax
jg 0x715c46
mov eax, dword [0x100aeab8]
test eax, eax
je 0x715c58
cmp edi, eax
jle 0x715c58
push 0x1007a63c
call fcn.007290db
add esp, 4
jmp 0x715da1
mov esi, dword [esp + 0x78]
test esi, esi
jne 0x715c72
push 0x10080e44
call fcn.007290db
add esp, 4
jmp 0x715da1
cmp dword [esp + 0x34], 0
je 0x7160dd
test edi, edi
je 0x7160dd
push 0x6c
lea edx, [esp + 0xa4]
push 0
push edx
call fcn.0075d0bb
movzx eax, si
imul eax, ebx
add eax, 0x1f
and eax, 0xffffffe0
cdq
and edx, 7
add eax, edx
mov ebp, eax
sar ebp, 3
mov eax, ebp
imul eax, edi
mov ecx, edi
neg ecx
mov dword [esp + 0xb4], ecx
mov ecx, 1
mov dword [esp + 0xc0], eax
add esp, 0xc
mov edx, ecx
xor eax, eax
mov dword [esp + 0xa0], 0x6c
mov dword [esp + 0xa4], ebx
mov word [esp + 0xae], si
mov word [esp + 0xac], dx
mov dword [esp + 0xb0], 3
cmp si, 8
jne 0x715d0a
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
cmp si, 8
jne 0x715d30
mov dword [esp + 0xc0], 0x100
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x80]
mov dword [esp + 0xc8], ecx
mov ecx, dword [esp + 0x84]
push edi
mov dword [esp + 0xc8], eax
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x38]
push ebx
mov dword [esp + 0xd8], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0xd4], edx
mov edx, dword [esp + 0x90]
push eax
push ecx
mov dword [esp + 0xe4], edx
call fcn.0071546b
add esp, 0x10
test eax, eax
jne 0x715df3
mov edx, dword [esp + 0x10]
push edx
push 0x10080e20
call fcn.007290db
add esp, 8
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x39c]
push 0
push ebp
push edx
call fcn.0070933b
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x715dda
push 0x16b
push esi
call fcn.00727cdb
add esp, 4
push eax
push esi
push ebp
push 0x10080de8
call fcn.007290db
add esp, 0x14
mov ecx, dword [esp + 0x390]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0075be18
add esp, 0x384
ret
mov ecx, dword [0x100aeab4]
sub ecx, 0
je 0x715e16
sub ecx, 1
je 0x715e0f
sub ecx, 1
jne 0x715e1d
mov ecx, 0x1007a604
jmp 0x715e21
mov ecx, 0x1007a600
jmp 0x715e21
mov ecx, 0x1007a5fc
jmp 0x715e21
mov ecx, dword [esp + 0x10]
push ecx
push eax
sub esp, 0x20
mov ecx, 8
lea esi, [esp + 0x94]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.007154fb
mov ecx, dword [esp + 0x58]
add esp, 0x20
push eax
mov eax, dword [esp + 0x38]
push eax
push ecx
call fcn.00728ddb
push eax
push 0x1007a5d0
lea edx, [esp + 0x2a8]
push 0x104
push edx
call fcn.0075c749
lea eax, [esp + 0x2b0]
push 0x1007a5cc
push eax
call fcn.0075beeb
mov esi, eax
add esp, 0x2c
test esi, esi
je 0x715d9d
mov eax, dword [0x100aeab4]
sub eax, 0
je 0x716026
sub eax, 1
je 0x715fe1
sub eax, 1
jne 0x7160cf
push esi
push 1
push 4
push 0x1007a5c4
call fcn.0075d43e
mov edi, dword [0x10079450]
add esp, 0x10
cmp eax, 1
je 0x715ed2
call edi
push eax
push 0x1007a5a0
call fcn.007290db
add esp, 8
push 0x7c
lea ecx, [esp + 0x110]
push 0
push ecx
call fcn.0075d0bb
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x128], ecx
mov ecx, dword [esp + 0x8c]
push esi
mov dword [esp + 0x124], edx
mov edx, dword [esp + 0x98]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x8c]
push 1
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x184], edx
mov edx, dword [esp + 0x98]
mov dword [esp + 0x178], eax
mov eax, dword [esp + 0x8c]
lea ecx, [esp + 0x120]
push 0x7c
push ecx
mov dword [esp + 0x128], 0x7c
mov dword [esp + 0x12c], 0x100f
mov dword [esp + 0x170], 0x20
mov dword [esp + 0x174], 0x40
mov dword [esp + 0x188], edx
mov dword [esp + 0x17c], eax
call fcn.0075d43e
add esp, 0x1c
cmp eax, 1
je 0x715fa0
call edi
push eax
push 0x1007a5a0
call fcn.007290db
add esp, 8
mov edx, dword [esp + 0x34]
imul edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
push esi
push 1
push edx
push eax
call fcn.0075d43e
add esp, 0x10
cmp eax, 1
je 0x7160cf
call edi
push eax
push 0x1007a5a0
call fcn.007290db
add esp, 8
push esi
call fcn.0075c7de
add esp, 4
jmp 0x715d9d
mov ecx, dword [esp + 0x34]
imul ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x48]
push esi
push 1
push ecx
push edx
call fcn.0075d43e
add esp, 0x10
cmp eax, 1
je 0x7160cf
call dword [0x10079450]
push eax
push 0x1007a5a0
call fcn.007290db
add esp, 8
push esi
call fcn.0075c7de
add esp, 4
jmp 0x715d9d
mov ecx, dword [esp + 0xb4]
mov eax, 0x4d42
mov word [esp + 0x14], ax
mov eax, dword [esp + 0xc0]
lea edx, [ecx + eax*4]
mov ecx, dword [esp + 0xa0]
push esi
lea edx, [edx + ecx + 0xe]
lea eax, [ecx + eax*4 + 0xe]
push 1
mov dword [esp + 0x1e], edx
xor edx, edx
lea ecx, [esp + 0x1c]
push 0xe
push ecx
mov word [esp + 0x2a], dx
mov word [esp + 0x2c], dx
mov dword [esp + 0x2e], eax
call fcn.0075d43e
push esi
push 1
lea edx, [esp + 0xb8]
push 0x6c
push edx
call fcn.0075d43e
mov eax, dword [esp + 0xe0]
add esp, 0x20
test eax, eax
je 0x7160a8
push esi
add eax, eax
push 1
add eax, eax
push eax
push 0x100ae0e0
call fcn.0075d43e
add esp, 0x10
xor edi, edi
cmp dword [esp + 0x2c], edi
jle 0x7160cf
mov ecx, edi
imul ecx, dword [esp + 0x34]
add ecx, dword [esp + 0x48]
push esi
push 1
push ebp
push ecx
call fcn.0075d43e
inc edi
add esp, 0x10
cmp edi, dword [esp + 0x2c]
jl 0x7160b0
push esi
call fcn.0075c7de
add esp, 4
jmp 0x715d9d
push 0x10080dc8
call fcn.007290db
add esp, 4
jmp 0x715da1
sub esp, 0x7c
test dword [0x100b1eec], 0x100
push ebx
mov ebx, dword [esp + 0x84]
push ebp
mov ebp, dword [esp + 0x8c]
push esi
je 0x7165fa
push ebx
push ebp
push 0x10081058
call fcn.007290db
add esp, 0xc
push 0x7c
lea eax, [esp + 0x10]
push 0
push eax
call fcn.0075d0bb
add esp, 0xc
call fcn.0070978b
push 0
push 0x21
lea ecx, [esp + 0x14]
push ecx
push 0
push ebx
push ebp
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], 0x808
call fcn.0070938b
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x71665e
push 0x207
push esi
call fcn.00727cdb
add esp, 4
push eax
push esi
push ebp
push 0x10081028
call fcn.007290db
add esp, 0x14
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret
test dword [esp + 0x74], 0x1000
je 0x71672c
push ebx
mov ecx, 0x100b1c18
call fcn.00730ebb
test eax, eax
jne 0x71672c
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x60]
push edi
push edx
push eax
push ecx
push ebx
push ebp
push 0x10080ff0
call fcn.007290db
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
add esp, 0x18
mov edi, eax
cmp ecx, 0x10
je 0x7166ed
cmp ecx, 0x20
jne 0x71672b
xor esi, esi
test eax, eax
jle 0x71672b
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
imul eax, esi
sar eax, 2
lea eax, [ecx + eax*4]
test edx, edx
jle 0x7166e6
add eax, 3
mov ecx, edx
jmp 0x7166db
mov byte [eax], 0x7f
add eax, 4
sub ecx, 1
jne 0x7166db
inc esi
cmp esi, edi
jl 0x7166bc
jmp 0x71672b
xor esi, esi
test eax, eax
jle 0x71672b
jmp 0x7166fb
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
imul eax, esi
sar eax, 1
lea ecx, [ecx + eax*2]
xor eax, eax
test edx, edx
jle 0x716726
mov ebp, 0x8000
or word [ecx + eax*2], bp
inc eax
cmp eax, edx
jl 0x716711
mov ebp, dword [esp + 0x94]
inc esi
cmp esi, edi
jl 0x7166fb
pop edi
push 0
push ebx
push ebp
call fcn.0070933b
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x71675e
push 0x228
push esi
call fcn.00727cdb
add esp, 4
push eax
push esi
push ebx
push 0x10080fb8
call fcn.007290db
add esp, 0x14
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret
mov eax, dword [0x100b1ed4]
and eax, 0x1e000
cmp eax, 0x4000
je 0x7167a6
cmp eax, 0x8000
je 0x716794
cmp eax, 0x10000
je 0x71678f
jmp 0x7156bb
jmp 0x7165cb
mov ecx, dword [esp + 8]
push ecx
mov ecx, dword [esp + 8]
call fcn.007160fb
add esp, 4
ret
jmp 0x7159db