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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x7565f5
mov eax, dword [esp + 0x70]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x756637
mov eax, dword [eax + 0xc]
test eax, eax
je 0x7565e8
sub esp, 0xc
push eax
call dword [0x7d2c50]
mov eax, dword [esp + 0x80]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
add esp, 0x10
mov dword [esp + 0x20], 0x33
mov ebp, dword [esp + 0x70]
lea esi, [esi]
lea esi, [esi]
movzx eax, byte [ebp + 0x97]
cmp al, 2
je 0x755df7
cmp al, 1
jne 0x755df3
jmp 0x7560f8
sub esp, 0xc
push ebp
call fcn.007281d0
movzx eax, byte [ebp + 0x97]
add esp, 0x10
cmp al, 1
je 0x7560f8
cmp al, 3
je 0x755dd8
movzx eax, byte [ebp + 0x98]
and eax, 0xc
je 0x756020
mov esi, dword [ebp + 0x58]
mov edi, dword [ebp]
mov dword [esp + 0x1c], esi
add esi, 0x28
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], esi
cmp al, 4
je 0x756208
mov eax, dword [edi + 0x20]
mov edx, 8
mov dword [esp], eax
mov ebx, eax
mov eax, esi
call fcn.006c0860
and ebx, 0x1000000
cmp dword [ebp + 0x24], 7
je 0x756527
test ebx, ebx
jne 0x756220
movzx eax, byte [ebp + 0x98]
mov dword [esp], 0
mov dword [esp + 0x10], 0
mov edi, dword [ebp + 0x6c]
and eax, 0xc
mov dword [esp + 0x14], 0
mov byte [esp + 8], al
mov dword [esp + 4], edi
mov esi, dword [ebp + 0x20]
nop
mov ebx, esi
add esi, 1
cmp ebx, dword [esp + 4]
jge 0x7562c5
mov eax, dword [ebp + 0x6c]
cmp ebx, eax
jge 0x755fa8
mov eax, dword [ebp + 0x68]
lea edx, [ebx + ebx*4]
lea edi, [eax + edx*4]
mov eax, dword [esp]
test eax, eax
je 0x755eb4
cmp byte [edi + 1], 0xfc
je 0x755fd8
cmp byte [esp + 8], 8
jne 0x755ed0
movzx eax, byte [edi]
cmp al, 0xbc
je 0x755ed0
cmp esi, 1
jle 0x755e80
cmp al, 8
jne 0x755e80
lea esi, [esi]
nop
mov eax, dword [esp + 0x24]
mov dword [esp], edi
mov dword [ebp + 0x20], esi
mov eax, dword [eax + 0x120]
test eax, eax
je 0x7564d8
sub esp, 8
mov dword [ebp + 0x24], 9
push 0xa34bfc
push ebp
call fcn.006ebce0
add esp, 0x10
xor eax, eax
cmp eax, dword [ebp + 0x88]
sbb eax, dword [ebp + 0x8c]
jl 0x756298
mov dword [ebp + 0x78], 0
mov ebx, 1
cmp byte [ebp + 0x96], 0
js 0x7563d9
mov ecx, dword [ebp + 0x24]
test ecx, ecx
setne dl
mov eax, dword [esp + 0xc]
mov dword [eax + 0x40], ebx
mov eax, dword [ebp]
cmp byte [eax + 0x57], 0
jne 0x7560a0
test dl, dl
jne 0x7560a0
mov eax, dword [esp + 0xc]
and ebx, dword [eax + 0x48]
cmp ebx, 0x11
jne 0x7560d0
sub dword [esp + 0x20], 1
je 0x7560d0
mov eax, ebp
mov ebx, dword [ebp + 0x20]
call fcn.0076baf0
test eax, eax
jne 0x756560
sub esp, 0xc
push ebp
call fcn.007281d0
add esp, 0x10
test ebx, ebx
js 0x755f95
mov byte [ebp + 0x95], 0xfe
mov eax, dword [ebp]
mov dword [esp + 0xc], eax
jmp 0x755dc0
mov edi, dword [esp + 0x10]
sub ebx, eax
mov ecx, dword [edi]
mov eax, dword [ecx + 4]
cmp eax, ebx
jg 0x755fce
lea edx, [edi + 4]
lea esi, [esi]
mov ecx, dword [edx]
sub ebx, eax
add edx, 4
mov eax, dword [ecx + 4]
cmp eax, ebx
jle 0x755fc0
mov eax, dword [ecx]
jmp 0x755e9d
mov eax, dword [esp + 0x14]
test eax, eax
je 0x756194
mov edx, dword [edi + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ebx
xor eax, eax
mov ebx, dword [esp + 0x14]
jmp 0x75600b
add eax, 1
cmp ebx, eax
je 0x756190
cmp dword [ecx + eax*4], edx
jne 0x756000
mov ebx, dword [esp + 0x18]
jmp 0x755eb4
mov esi, dword [esp + 0xc]
mov eax, ebp
add dword [esi + 0xc8], 1
call fcn.0074a4f0
sub dword [esi + 0xc8], 1
mov ebx, eax
cmp eax, 0x64
je 0x756410
xor eax, eax
cmp eax, dword [ebp + 0x88]
sbb eax, dword [ebp + 0x8c]
jge 0x75605f
mov eax, dword [esp + 0xc]
mov edx, ebp
call fcn.006b6d30
mov dword [ebp + 0x78], 0
cmp ebx, 0x65
jne 0x755f20
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x55], 0
jne 0x7562f8
mov eax, dword [esp + 0xc]
mov ecx, dword [ebp + 0x24]
mov ebx, 0x65
mov dword [eax + 0x40], ebx
mov eax, dword [ebp]
test ecx, ecx
setne dl
cmp byte [eax + 0x57], 0
je 0x755f49
nop
mov edx, ecx
call fcn.006c14c0
cmp eax, 7
jne 0x755f51
cmp byte [ebp + 0x96], 0
mov dword [ebp + 0x24], 7
jns 0x755f51
mov ebx, 7
mov eax, dword [esp + 0xc]
and ebx, dword [eax + 0x48]
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x7560e8
sub esp, 0xc
push eax
call dword [0x7d2c58]
add esp, 0x10
add esp, 0x5c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
test byte [ebp + 0x98], 3
jne 0x7563e7
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0xbc]
test ecx, ecx
je 0x7564a4
mov eax, dword [esp + 0xc]
test byte [eax + 0x5e], 2
je 0x756148
cmp byte [eax + 0xb1], 0
jne 0x756148
mov edx, dword [ebp + 0xc8]
test edx, edx
je 0x756148
mov eax, dword [eax]
lea edx, [ebp + 0x88]
call fcn.006b6cc0
lea esi, [esi]
mov edi, dword [esp + 0xc]
movzx eax, byte [ebp + 0x98]
add dword [edi + 0xbc], 1
test al, 0x40
jne 0x756165
add dword [edi + 0xc4], 1
test al, al
jns 0x756174
mov edi, dword [esp + 0xc]
add dword [edi + 0xc0], 1
mov dword [ebp + 0x20], 0
mov byte [ebp + 0x97], 2
jmp 0x755dfe
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 1]
test ecx, ecx
lea edx, [eax*4]
mov dword [esp + 0x14], eax
setne cl
mov eax, dword [esp]
movzx ecx, cl
mov dword [esp + 0x18], edx
call fcn.006d4980
mov dword [ebp + 0x24], eax
test eax, eax
jne 0x756281
mov ecx, dword [esp]
mov eax, dword [edi + 0x10]
mov edx, dword [ecx + 8]
mov ecx, edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x18]
mov dword [ecx + edx - 4], eax
mov ecx, dword [esp]
movzx eax, word [ecx + 0x10]
mov dword [ecx + 0xc], edx
mov word [esp + 0x18], ax
and ax, 0xf240
or eax, 0x10
mov word [ecx + 0x10], ax
mov eax, dword [edi + 0x10]
mov edx, dword [eax + 4]
add dword [esp + 4], edx
jmp 0x755eb4
mov eax, dword [esp + 0x28]
mov edx, 8
call fcn.006c0860
cmp dword [ebp + 0x24], 7
je 0x756527
mov eax, dword [ebp + 0x58]
movzx ecx, byte [ebp + 0x98]
lea edi, [eax + 0x168]
and ecx, 0xc
mov dword [esp], edi
mov edi, dword [ebp + 0x6c]
mov byte [esp + 8], cl
test byte [eax + 0x178], 0x10
je 0x7562b0
mov edx, dword [eax + 0x174]
mov eax, dword [eax + 0x170]
mov esi, edx
mov dword [esp + 0x10], eax
shr esi, 2
mov dword [esp + 0x14], esi
je 0x755e78
lea ebx, [eax + esi*4]
lea esi, [esi]
nop
mov edx, dword [eax]
add eax, 4
add edi, dword [edx + 4]
cmp ebx, eax
jne 0x756270
jmp 0x755e78
xor eax, eax
cmp eax, dword [ebp + 0x88]
sbb eax, dword [ebp + 0x8c]
mov dword [ebp + 0x20], esi
jge 0x755f14
mov eax, dword [esp + 0xc]
mov edx, ebp
call fcn.006b6d30
jmp 0x755f14
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
jmp 0x755e78
xor eax, eax
cmp eax, dword [ebp + 0x88]
sbb eax, dword [ebp + 0x8c]
mov dword [ebp + 0x20], esi
mov dword [ebp + 0x24], 0
jl 0x756549
mov eax, dword [esp + 0xc]
mov dword [ebp + 0x78], 0
cmp byte [eax + 0x55], 0
je 0x75607d
mov edi, dword [esp + 0xc]
mov ebx, dword [edi + 0x14]
test ebx, ebx
jle 0x756684
xor ecx, ecx
mov dword [esp + 0x70], ebp
xor esi, esi
mov dword [esp], ecx
jmp 0x7563a4
add dword [ebx + 0xc], 1
cmp byte [ebx + 0xa], 0
jne 0x756428
mov eax, ebx
call fcn.006bb9d0
mov edx, dword [ebx + 4]
movzx eax, byte [ebx + 9]
mov edx, dword [edx]
mov ecx, dword [edx + 0xe8]
test ecx, ecx
je 0x7564b3
mov edx, dword [ecx + 0xc]
mov dword [ecx + 0xc], 0
test al, al
je 0x756368
sub dword [ebx + 0xc], 1
je 0x75644f
lea esi, [esi]
test edx, edx
jle 0x756398
mov eax, dword [edi + 0x108]
test eax, eax
je 0x756398
mov ecx, dword [esp]
test ecx, ecx
jne 0x756398
push edx
mov edx, dword [edi + 0x10]
push dword [edx + ebp]
push edi
push dword [edi + 0x10c]
call eax
mov dword [esp + 0x10], eax
add esp, 0x10
lea esi, [esi]
add esi, 1
cmp esi, dword [edi + 0x14]
jge 0x756463
mov eax, dword [edi + 0x10]
mov ebp, esi
shl ebp, 4
mov ebx, dword [eax + ebp + 4]
test ebx, ebx
je 0x756398
cmp byte [ebx + 9], 0
jne 0x756320
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0xe8]
test eax, eax
je 0x756398
mov edx, dword [eax + 0xc]
mov dword [eax + 0xc], 0
jmp 0x756368
mov eax, ebp
call fcn.006d8480
mov ebx, eax
jmp 0x755f2d
cmp byte [ebp + 0x96], 0
mov dword [ebp + 0x24], 0x11
js 0x7565da
mov ebx, 1
jmp 0x7560c9
mov eax, dword [esp + 0x70]
mov dword [eax + 0x24], 0
mov eax, dword [esp + 0xc]
mov ebx, 0x64
mov dword [eax + 0x40], 0x64
jmp 0x7560d0
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0xe8]
test eax, eax
je 0x7564bb
mov edx, dword [eax + 0xc]
mov dword [eax + 0xc], 0
sub dword [ebx + 0xc], 1
jne 0x756368
mov eax, ebx
mov dword [esp + 4], edx
call fcn.006b0560
mov edx, dword [esp + 4]
jmp 0x756368
mov ecx, dword [esp]
mov ebp, dword [esp + 0x70]
xor edx, edx
mov ebx, 0x65
mov dword [ebp + 0x24], ecx
test ecx, ecx
je 0x755f35
mov esi, dword [esp + 0xc]
mov eax, dword [ebp]
mov edx, ecx
mov dword [esi + 0x40], 1
call fcn.006c14c0
cmp eax, 7
jne 0x756c78
mov ebx, 1
jmp 0x7560b0
mov dword [eax + 0x120], 0
jmp 0x756117
test al, al
je 0x756398
sub dword [ebx + 0xc], 1
jne 0x756398
mov eax, ebx
call fcn.006b0560
jmp 0x756398
xor eax, eax
mov dword [esp + 0x38], 0
mov word [esp + 0x4c], ax
mov eax, dword [esp]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0x3b9aca00
mov dword [esp + 0x48], 0
movzx eax, byte [eax + 1]
mov byte [esp + 4], al
add eax, 0xf
cmp al, 0xd
ja 0x7569c9
movzx eax, al
jmp dword [eax*4 + 0xa34c38]
mov eax, dword [esp + 0x24]
cmp byte [eax + 0x57], 0
jne 0x755f00
cmp byte [eax + 0x58], 0
jne 0x755f00
call fcn.006ceb20
jmp 0x755f00
mov eax, dword [esp + 0xc]
mov edx, ebp
call fcn.006b6d30
mov dword [ebp + 0x78], 0
jmp 0x75606f
mov ebx, eax
mov eax, dword [esp + 0x2c]
mov esi, dword [eax + 0x11c]
test esi, esi
je 0x75659c
movzx eax, word [esi + 0x10]
mov edx, eax
and dx, 0x202
cmp dx, 0x202
je 0x756672
test al, 1
jne 0x756699
mov eax, esi
mov edx, 1
call fcn.006d6970
mov esi, eax
mov eax, dword [esp + 0x70]
mov edx, dword [eax + 0x7c]
test edx, edx
je 0x7565b0
mov eax, dword [esp + 0x2c]
call fcn.006bf870
mov eax, dword [esp + 0x2c]
cmp byte [eax + 0x57], 0
je 0x75664b
mov eax, dword [esp + 0x70]
mov ebx, 7
mov dword [eax + 0x7c], 0
mov dword [eax + 0x24], 7
jmp 0x7560d0
mov eax, ebp
call fcn.006d8480
mov ebx, eax
jmp 0x755f51
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
jmp 0x755daa
sub esp, 8
push 0xa32088
push 0x15
call fcn.006f2970
add esp, 0x10
sub esp, 0xc
mov ebx, 0x15
push 0xa302c4
push 0x16265
push 0xa31eb0
push 0xa31eb7
push 0x15
call fcn.006f2970
add esp, 0x20
mov eax, ebx
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
sub esp, 8
push 0xa320b0
push 0x15
call fcn.006f2970
add esp, 0x10
jmp 0x756607
mov edx, esi
mov esi, eax
call fcn.006d0890
mov edi, dword [esp + 0x70]
mov edx, ebx
mov dword [edi + 0x7c], eax
mov eax, esi
call fcn.006c14c0
mov ebx, eax
mov eax, dword [esp + 0x70]
mov dword [eax + 0x24], ebx
jmp 0x7560d0
cmp byte [esi + 0x12], 1
jne 0x756586
mov esi, dword [esi + 8]
jmp 0x75659c
mov dword [ebp + 0x24], 0
xor edx, edx
xor ecx, ecx
mov ebx, 0x65
jmp 0x755f35
xor esi, esi
jmp 0x75659c
test byte [esp + 0x4c], 7
jne 0x756b3d
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x7567cc
mov eax, dword [esp + 0x48]
mov byte [esi + eax], 0
mov eax, dword [esp + 0x44]
test eax, eax
je 0x7567c8
test byte [esp + 0x4d], 4
je 0x756c0d
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x1c]
movzx edx, byte [ebp + 0x98]
movzx eax, word [eax + 0x38]
and edx, 0xc
mov word [esp + 4], ax
and ax, 0x9000
cmp dl, 8
je 0x756aae
mov ecx, ebx
sar ebx, 0x1f
test ax, ax
jne 0x756b6e
mov eax, dword [esp + 0x1c]
mov edx, 4
mov dword [eax + 0x28], ecx
mov dword [eax + 0x2c], ebx
mov word [eax + 0x38], dx
mov edi, dword [esp]
mov ebx, dword [esp + 0x1c]
movzx eax, byte [edi]
push 0
push 1
push 0xffffffffffffffff
mov edx, dword [eax*4 + 0xa3a440]
lea eax, [ebx + 0x50]
push 0xffffffffffffffff
call fcn.006d8020
mov eax, dword [edi + 4]
add esp, 0x10
mov edi, dword [esp + 0x1c]
cdq
test word [ebx + 0x88], 0x9000
jne 0x756b96
mov dword [edi + 0x78], eax
mov eax, 4
mov dword [edi + 0x7c], edx
mov word [edi + 0x88], ax
mov eax, dword [esp]
mov edi, dword [esp + 0x1c]
mov eax, dword [eax + 8]
cdq
test word [edi + 0xb0], 0x9000
jne 0x756b80
mov edi, dword [esp + 0x1c]
mov dword [edi + 0xa0], eax
mov eax, 4
mov dword [edi + 0xa4], edx
mov word [edi + 0xb0], ax
mov eax, dword [esp]
mov edi, dword [esp + 0x1c]
mov eax, dword [eax + 0xc]
cdq
test word [edi + 0xd8], 0x9000
jne 0x756bbf
mov edi, dword [esp + 0x1c]
mov dword [edi + 0xc8], eax
mov eax, 4
mov dword [edi + 0xcc], edx
mov word [edi + 0xd8], ax
mov eax, dword [esp]
mov edi, dword [esp + 0x1c]
xor edx, edx
movzx eax, word [eax + 2]
test word [edi + 0x128], 0x9000
jne 0x756ba9
mov edi, dword [esp + 0x1c]
mov dword [edi + 0x118], eax
mov eax, 4
mov dword [edi + 0x11c], edx
mov word [edi + 0x128], ax
mov eax, dword [esp + 0x1c]
test word [eax + 0x150], 0x9000
jne 0x756b5f
mov eax, dword [esp + 0x1c]
mov edi, 1
mov word [eax + 0x150], di
mov eax, dword [esp + 0x1c]
add eax, 0xf0
push fcn.006b6db0
mov edx, esi
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.006d8020
mov eax, dword [esp + 0x38]
add esp, 0x10
mov dword [ebp + 0x78], eax
mov eax, dword [esp + 0x24]
cmp byte [eax + 0x57], 0
je 0x756405
mov dword [ebp + 0x24], 7
jmp 0x755f00
sub esp, 8
push esi
lea eax, [esp + 0x44]
mov dword [esp + 0x10], eax
push eax
call fcn.006d4560
add esp, 0x10
jmp 0x75679a
mov eax, dword [esp]
mov esi, dword [eax + 0x10]
test esi, esi
jne 0x7569af
jmp 0x7567cc
mov edi, dword [esp]
mov ecx, dword [edi + 4]
mov ebx, ecx
sar ebx, 0x1f
test ax, ax
jne 0x756bfb
mov eax, dword [esp + 0x1c]
mov edi, 4
mov dword [eax + 0x28], ecx
mov dword [eax + 0x2c], ebx
mov word [eax + 0x38], di
mov eax, dword [esp]
mov edi, dword [esp + 0x1c]
mov eax, dword [eax + 8]
cdq
test word [edi + 0x60], 0x9000
jne 0x756be8
mov edi, dword [esp + 0x1c]
mov ebx, 4
mov dword [edi + 0x50], eax
mov dword [edi + 0x54], edx
mov word [edi + 0x60], bx
mov eax, dword [esp]
mov edi, dword [esp + 0x1c]
mov eax, dword [eax + 0xc]
cdq
test word [edi + 0x88], 0x9000
jne 0x756bd5
mov edi, dword [esp + 0x1c]
mov ecx, 4
mov dword [edi + 0x78], eax
mov dword [edi + 0x7c], edx
mov word [edi + 0x88], cx
mov eax, dword [esp + 0x1c]
add eax, 0xa0
jmp 0x75692e
mov eax, dword [esp + 0x24]
cmp byte [eax + 0x57], 0
jne 0x7567a5
cmp byte [eax + 0x58], 0
jne 0x7567a5
call fcn.006ceb20
jmp 0x7567a5
add eax, 0x140
call fcn.006bfc30
jmp 0x756925
mov eax, dword [esp + 0x28]
mov edx, ecx
mov ecx, ebx
call fcn.006bfce0
jmp 0x756811
lea ebx, [edi + 0xa0]
mov ecx, edx
mov edx, eax
mov eax, ebx
call fcn.006bfce0
jmp 0x756894
lea ebx, [edi + 0x78]
mov ecx, edx
mov edx, eax
mov eax, ebx
call fcn.006bfce0
jmp 0x75685e
lea ebx, [edi + 0x118]
mov ecx, edx
mov edx, eax
mov eax, ebx
call fcn.006bfce0
jmp 0x756902
lea ebx, [edi + 0xc8]
mov ecx, edx
mov edx, eax
mov eax, ebx
call fcn.006bfce0
jmp 0x7568ca
lea ebx, [edi + 0x78]
mov ecx, edx
mov edx, eax
mov eax, ebx
call fcn.006bfce0
jmp 0x756b2f
lea ebx, [edi + 0x50]
mov ecx, edx
mov edx, eax
mov eax, ebx
call fcn.006bfce0
jmp 0x756aff
mov eax, dword [esp + 0x28]
mov edx, ecx
mov ecx, ebx
call fcn.006bfce0
jmp 0x756ad5
mov eax, dword [esp + 4]
call fcn.006d0d30
mov esi, eax
jmp 0x7567cc
mov eax, dword [esp + 0xc]
mov ebx, dword [eax + 0x48]
and ebx, 1
jmp 0x7560d0