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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x34c
mov eax, dword [0x75bc8d18]
xor eax, ebp
mov dword [ebp - 4], eax
and dword [ebp - 0x30c], 0
and dword [ebp - 0x310], 0
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, ecx
mov ecx, dword [ebp + 8]
mov eax, ecx
and eax, 0x80000000
push edi
mov edi, ecx
mov dword [ebp - 0x330], eax
and ecx, 0x1fffffff
xor eax, eax
mov dword [ebp + 8], ecx
shr ecx, 0x18
inc eax
shl eax, cl
and edi, 0x40000000
mov dword [ebp - 0x314], esi
mov dword [ebp - 0x338], edi
mov dword [ebp - 0x324], ecx
mov dword [ebp - 0x32c], eax
test eax, 0xf000fff
je 0x759d3028
cmp byte [esi + 0x54], 0
jne 0x759d251d
test ebx, ebx
je 0x759d253e
cmp dword [esi + 0x60], 0
jne 0x759d3cae
cmp dword [ebp + 8], 0x5000000
je 0x759d25ba
cmp ecx, 0x18
je 0x759d2481
cmp dword [ebp + 8], 0x19000000
je 0x759d29bc
cmp dword [ebp - 0x338], 0
jne 0x759d2eb4
cmp dword [ebp - 0x324], 1
je 0x759d24b6
cmp dword [ebp - 0x324], 2
je 0x759d24b6
mov edi, dword [ebp - 0x32c]
test edi, 0x311
jne 0x759d2f15
mov esi, 0x300
test dword [0x75bc8da4], edi
jne 0x759d2f43
test dword [0x75bc93d4], edi
jne 0x759d2f64
mov ecx, dword [0x75bcde24]
test ecx, ecx
jne 0x759d2f99
cmp dword [ebp - 0x324], 0x1a
je 0x759d24c8
cmp dword [ebp - 0x324], 0x1b
je 0x759d24c8
cmp byte [0x75bccd0d], 0
je 0x759d24da
cmp dword [ebp - 0x324], 0xb
je 0x759d8d8c
cmp byte [0x75bccd0e], 0
jne 0x759d2fc8
mov eax, dword [0x75bcc8fc]
and eax, edi
test al, 0x8e
jne 0x759d2ffc
test edi, 0x700
je 0x759ca91e
mov eax, dword [ebp - 0x314]
cmp byte [eax + 0x54], 0
jne 0x759d3015
mov eax, dword [ebp - 0x310]
test eax, eax
jne 0x759d36dd
mov eax, dword [ebp - 0x30c]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.759b1748
leave
ret 8
mov eax, dword [ebx]
xor edi, edi
inc edi
push edi
push ebx
call dword [eax + 0x1c]
cmp eax, 9
ja case.default.0x759d2494
jmp dword [eax*4 + 0x759d36e8]
mov ecx, dword [0x75bcde24]
xor ebx, ebx
mov dword [ebp - 0x30c], edi
cmp ecx, ebx
je 0x759ca91e
jmp 0x759d28f7
cmp dword [0x75bcca04], 0
je 0x759d2f01
jmp 0x759ca879
cmp dword [ebp - 0x30c], 0
je 0x759d2fb9
jmp 0x759ca8d0
cmp dword [ebp - 0x30c], 0
jne 0x759ca8dd
jmp 0x759d8d8c
cmp dword [ebp - 0x30c], 0
je 0x759d8d8c
jmp 0x759ca8f7
test eax, eax
je 0x759d8d94
jmp 0x759ca8f7
cmp dword [ebp - 0x324], 0xb
je 0x759d8db5
jmp 0x759ca8f7
test eax, 0x20000ef
je 0x759ca81d
test byte [ebp + 8], 1
mov byte [esi + 0x54], 0
je 0x759ca81d
push 2
pop eax
jmp 0x759ca932
mov ecx, esi
call fcn.75acb269
mov ecx, dword [ebp - 0x324]
mov ebx, eax
mov eax, dword [ebp - 0x32c]
jmp 0x759ca825
test dword [ecx + 0x42c], eax
je 0x759d3cbc
push ebx
push dword [ebp + 8]
call fcn.75b1491d
mov dword [ebp - 0x30c], eax
cmp eax, 2
jne 0x759d2591
mov ecx, esi
call fcn.75accdc5
mov eax, dword [ebp - 0x310]
test eax, eax
je 0x759d2536
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759d2536
cmp dword [ebp - 0x30c], 0
je 0x759d3cbc
jmp 0x759ca91e
mov ecx, esi
call fcn.75accdc5
jmp 0x759d3cd5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759d3ce3
mov esi, dword [esi]
test esi, esi
je 0x759d25d2
mov eax, dword [esi]
push esi
call dword [eax + 0x168]
test al, al
je 0x759d25d2
xor eax, eax
inc eax
jmp 0x759d25d4
xor eax, eax
push eax
call fcn.75ba4ba5
xor edi, edi
pop ecx
cmp eax, edi
je 0x759d25f0
mov ecx, eax
call fcn.75ba3cac
test al, al
jne 0x759ca852
lea ecx, [ebp - 0x310]
call fcn.759c6f3c
push eax
push ebx
call fcn.75acf512
mov ebx, dword [ebp - 0x310]
pop ecx
pop ecx
cmp ebx, edi
jne 0x759ca852
cmp dword [0x75bc8ca8], edi
je case.0x759d3042.0
push edi
push edi
mov esi, 0x759b7ff8
push esi
push esi
push esi
push esi
push esi
push esi
push 0x759d3c48
push edi
push edi
push 9
call fcn.759c26bf
mov eax, dword [ebp - 0x310]
add esp, 0x30
cmp eax, edi
je case.0x759d3042.0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
jmp 0x759ca932
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x1c]
cmp eax, 0x4000000
mov eax, dword [ebx]
jne 0x759d2736
push ebx
call dword [eax + 0xc]
cmp eax, 5
jne case.default.0x759d2494
mov eax, dword [ebx]
push 4
push ebx
call dword [eax + 0x20]
push 5
mov dword [ebp - 0x314], eax
mov eax, dword [ebx]
push ebx
call dword [eax + 0x20]
cmp dword [ebp - 0x314], 0
mov esi, eax
mov byte [ebp - 0x305], 0
je 0x759d26b0
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
push 0x52
lea edx, [ebp - 0x68]
push edx
push eax
call dword [ecx + 0x18]
cmp eax, 0x52
je 0x759d26b7
mov byte [ebp - 0x305], 1
test esi, esi
je 0x759d26cc
mov eax, dword [esi]
push 0xc
lea ecx, [ebp - 0x10]
push ecx
push esi
call dword [eax + 0x18]
cmp eax, 0xc
je 0x759d26d3
mov byte [ebp - 0x305], 1
cmp byte [ebp - 0x305], 0
jne 0x759d2704
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebx]
push 3
push ebx
call dword [eax + 0x1c]
push eax
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x1c]
push eax
call dword [0x75bc8c60]
mov dword [ebp - 0x30c], edi
jmp 0x759d270e
mov dword [ebp - 0x30c], 0x3fff
test esi, esi
je 0x759d2718
mov eax, dword [esi]
push esi
call dword [eax + 8]
cmp dword [ebp - 0x314], 0
je 0x759ca91e
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ca91e
push 5
push ebx
call dword [eax + 0x28]
push eax
mov eax, dword [ebx]
push 4
push ebx
call dword [eax + 0x28]
push eax
mov eax, dword [ebx]
push 3
push ebx
call dword [eax + 0x1c]
push eax
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x1c]
push eax
call dword [0x75bc8c60]
mov dword [ebp - 0x30c], edi
jmp 0x759ca91e
mov eax, dword [ebx]
push ebx
call dword [eax + 0xc]
cmp eax, 2
jne case.default.0x759d2494
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x28]
push eax
call dword [sym.imp.GDI32.dll_AddFontResourceW]
jmp 0x759d275e
mov eax, dword [ebx]
push ebx
call dword [eax + 0xc]
cmp eax, 2
jne case.default.0x759d2494
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x28]
push eax
call dword [sym.imp.GDI32.dll_RemoveFontResourceW]
jmp 0x759d275e
mov esi, dword [esi]
mov dword [ebp - 0x30c], edi
test esi, esi
je 0x759d27c2
mov eax, dword [esi]
push esi
call dword [eax + 0x168]
test al, al
jne 0x759d27c4
xor edi, edi
push edi
call fcn.75ba4ba5
mov edi, eax
pop ecx
test edi, edi
je case.default.0x759d2494
mov ecx, edi
call fcn.75ba3cac
test al, al
je case.default.0x759d2494
mov esi, dword [edi]
mov eax, dword [ebx]
push 3
push ebx
add esi, 8
call dword [eax + 0x1c]
dec eax
neg eax
sbb al, al
inc al
movzx eax, al
push eax
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x1c]
push eax
mov ecx, edi
call dword [esi]
test eax, eax
je 0x759d282e
cmp dword [0x75bc8ca8], 0
je 0x759d2856
xor ecx, ecx
push ecx
push ecx
mov esi, 0x759b7ff8
push esi
push esi
push esi
push esi
push esi
push eax
push 0x759d3bc0
push ecx
push ecx
jmp 0x759d284c
xor eax, eax
cmp dword [0x75bc8ca8], eax
je 0x759d2856
push eax
push eax
mov esi, 0x759b7ff8
push esi
push esi
push esi
push esi
push esi
push esi
push 0x759d3b18
push eax
push eax
push 0xa
call fcn.759c26bf
add esp, 0x30
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x10]
cmp eax, 1
je 0x759d28b1
jmp 0x759ca91e
mov esi, dword [esi]
mov dword [ebp - 0x30c], edi
test esi, esi
je 0x759d2884
mov eax, dword [esi]
push esi
call dword [eax + 0x168]
test al, al
je 0x759d2884
mov eax, edi
jmp 0x759d2886
xor eax, eax
push eax
call fcn.75ba4ba5
mov esi, eax
pop ecx
test esi, esi
je case.default.0x759d2494
mov ecx, esi
call fcn.75ba3cac
test al, al
je case.default.0x759d2494
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10]
cmp eax, edi
jne 0x759d28c0
mov dword [ebp - 0x30c], 7
jmp 0x759ca91e
cmp eax, 3
jne 0x759ca91e
mov dword [ebp - 0x30c], 4
jmp 0x759ca91e
mov eax, dword [ebx]
push ebx
call dword [eax + 0xc]
cmp eax, 2
jne case.default.0x759d2494
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x1c]
push eax
call dword [0x75bc8b20]
jmp 0x759d275e
cmp dword [ecx + 0x42c], ebx
je 0x759ca91e
call fcn.75b14c4d
test al, al
jne 0x759d275e
cmp dword [0x75bc8ca8], ebx
je case.default.0x759d2494
push ebx
push ebx
mov esi, 0x759b7ff8
push esi
push esi
push esi
push esi
push esi
push esi
push 0x759d3ac0
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
mov dword [ebp - 0x30c], 0x3fff
jmp 0x759ca91e
push edi
mov dword [ebp - 0x30c], edi
call fcn.759c9083
pop ecx
push 3
mov esi, eax
mov eax, dword [esi]
push edi
push esi
call dword [eax + 0x34]
push esi
push 0xb000000
mov ecx, 0x75bccad8
call fcn.759d8dd3
mov eax, dword [esi]
push esi
call dword [eax + 8]
jmp 0x759ca91e
push edi
mov dword [ebp - 0x30c], edi
call fcn.759c9083
pop ecx
push 4
jmp 0x759d2954
mov eax, dword [0x75bcca34]
mov dword [ebp - 0x30c], edi
test eax, eax
je 0x759ca91e
push 3
mov esi, eax
mov eax, dword [ebx]
push ebx
call dword [eax + 0x1c]
push eax
mov eax, dword [ebx]
push 2
push ebx
call dword [eax + 0x1c]
push eax
mov ecx, esi
call fcn.75b5c721
jmp 0x759ca91e
mov eax, dword [ebx]
push ebx
mov byte [ebp - 0x305], 0
call dword [eax + 0xc]
cmp eax, 2
jge 0x759d29d5
mov byte [ebp - 0x305], 1
mov esi, dword [esi]
test esi, esi
je 0x759d29ed
mov eax, dword [esi]
push esi
call dword [eax + 0x168]
test al, al
je 0x759d29ed
xor eax, eax
inc eax
jmp 0x759d29ef
xor eax, eax
push eax
call fcn.75ba4ba5
pop ecx
mov dword [ebp - 0x320], eax
test eax, eax
jne 0x759d2a07
mov byte [ebp - 0x305], 1
cmp byte [ebp - 0x305], 0
jne 0x759d2e9b
mov ecx, dword [ebp - 0x320]
cmp dword [ecx + 4], 0xffffffff
mov esi, 0x759b7ff8
jne 0x759d2a8c
xor eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x14]
lea edx, [ebp - 8]
push eax
mov dword [ebp - 0x14], edx
call fcn.75ba4336
xor ecx, ecx
cmp eax, ecx
je 0x759d2a61
mov byte [ebp - 0x305], 1
cmp dword [0x75bc8ca8], ecx
je 0x759d2a82
push ecx
push ecx
push esi
push esi
push esi
push esi
push esi
push eax
push 0x759fa548
jmp 0x759d2a76
cmp dword [0x75bc8ca8], ecx
je 0x759d2a82
push ecx
push ecx
push esi
push esi
push esi
push esi
push esi
push esi
push 0x759fa638
push ecx
push ecx
push 0xa
call fcn.759c26bf
add esp, 0x30
lea ecx, [ebp - 0x14]
call fcn.759b1681
jmp 0x759d2a91
call fcn.75ba40bc
cmp byte [ebp - 0x305], 0
jne 0x759d2e9b
mov ecx, dword [ebp - 0x320]
call fcn.75ba3cac
test al, al
je 0x759d2e9b
mov eax, dword [ebx]
and dword [ebp - 0x31c], 0
push ebx
call dword [eax + 0xc]
push 4
pop ecx
cmp eax, ecx
jb 0x759d2b81
mov dword [ebp - 0x318], ecx
and dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x318]
xor eax, eax
lea edi, [ebp - 0xc]
stosd dword es:[edi], eax
add ecx, 0xfffffffe
push ecx
stosd dword es:[edi], eax
mov eax, dword [ebx]
push ebx
call dword [eax + 0x1c]
mov edi, dword [ebp - 0x318]
lea ecx, [edi - 1]
push ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebx]
push ebx
call dword [eax + 0x1c]
push edi
mov dword [ebp - 8], eax
mov eax, dword [ebx]
push ebx
call dword [eax + 0x1c]
mov ecx, dword [ebp - 0x320]
mov dword [ebp - 0xc], eax
call fcn.75ba3cac
test al, al
je 0x759d2b70
mov ecx, dword [ebp - 0x320]
mov eax, dword [ecx]
lea edx, [ebp - 0x10]
push edx
call dword [eax + 4]
xor edi, edi
cmp eax, edi
jne 0x759d2b4b
add dword [ebp - 0x318], 3
mov eax, dword [ebx]
inc dword [ebp - 0x31c]
push ebx
call dword [eax + 0xc]
cmp dword [ebp - 0x318], eax
ja 0x759d2b79
jmp 0x759d2acf
cmp dword [0x75bc8ca8], edi
je 0x759d2b72
push edi
push edi
push esi
push esi
push esi
push esi
push eax
push dword [ebp - 0x10]
push 0x759d39b8
push edi
push edi
push 0xa
call fcn.759c26bf
add esp, 0x30
jmp 0x759d2b72
xor edi, edi
mov byte [ebp - 0x305], 1
cmp dword [ebp - 0x31c], edi
jne 0x759d2b88
mov byte [ebp - 0x305], 1
cmp byte [ebp - 0x305], 0
jne 0x759d2e9b
mov ecx, dword [ebp - 0x320]
call fcn.75ba3cac
test al, al
je 0x759d2e9b
mov ecx, dword [ebp - 0x320]
or dword [ebp - 0x348], 0xffffffff
lea eax, [ebp - 0x318]
push eax
lea eax, [ebp - 0x348]
xor edi, edi
push eax
mov dword [ebp - 0x318], edi
call fcn.75ba4430
cmp eax, edi
je 0x759d2bfe
cmp dword [0x75bc8ca8], edi
je 0x759d2e9b
push edi
push edi
push esi
push esi
push esi
push esi
push esi
push eax
push 0x75a09a48
push edi
push edi
push 0xa
call fcn.759c26bf
add esp, 0x30
jmp 0x759d2e9d
cmp dword [ebp - 0x348], 1
jne 0x759d2c1e
mov eax, dword [ebp - 0x310]
cmp eax, edi
je 0x759d2c17
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 7
jmp 0x759d2538
cmp dword [ebp - 0x318], edi
jbe 0x759d2e79
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0x1c]
cmp eax, 1
jne 0x759d2c4f
mov eax, dword [ebp - 0x310]
cmp eax, edi
je 0x759d2c47
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
inc eax
jmp 0x759ca932
push 0x298
lea eax, [ebp - 0x300]
push edi
push eax
mov dword [ebp - 0x328], edi
mov dword [ebp - 0x304], edi
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x304]
push eax
mov dword [ebp - 0x318], edi
mov dword [ebp - 0x340], edi
push edi
jmp 0x759d2e4d
mov ecx, dword [ebp - 0x320]
lea eax, [ebp - 0x304]
push eax
call fcn.75ba4782
mov dword [ebp - 0x31c], 0x75bc8fe0
cmp word [ebp - 0x2f8], di
je 0x759d2cb6
lea eax, [ebp - 0x2f8]
jmp 0x759d2cc9
cmp word [ebp - 0xf8], di
je 0x759d2df3
lea eax, [ebp - 0xf8]
push eax
lea ecx, [ebp - 0x31c]
call fcn.759c8365
mov eax, dword [ebp - 0x328]
test al, 7
jne 0x759d2d75
lea ecx, [eax + 8]
cmp ecx, 0xffff
ja 0x759d2e61
mov eax, dword [ebp - 0x314]
mov eax, dword [eax + 0x84]
mov edx, dword [eax]
push ecx
push eax
call dword [edx + 0x18]
push dword [ebp - 0x310]
mov ecx, dword [eax]
push eax
mov dword [ebp - 0x33c], eax
call dword [ecx + 0x64]
lea eax, [ebp - 0x33c]
push eax
lea ecx, [ebp - 0x310]
call fcn.75bb0b43
cmp dword [ebp - 0x328], edi
jne 0x759d2d69
mov eax, dword [ebp - 0x310]
push edi
mov dword [ebp - 0x334], eax
mov eax, dword [ebx]
push ebx
call dword [eax + 0x24]
mov dword [ebp - 0x34c], eax
push dword [ebp - 0x34c]
mov eax, dword [ebp - 0x334]
mov ecx, dword [eax]
push edi
push eax
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x34c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x310]
push dword [ebp - 0x304]
inc dword [ebp - 0x328]
lea ecx, [ebp - 0x344]
mov dword [ebp - 0x334], eax
call fcn.759cc46d
push dword [eax]
mov ecx, dword [ebp - 0x334]
push dword [ebp - 0x328]
mov edx, dword [ecx]
push ecx
call dword [edx + 0x3c]
mov eax, dword [ebp - 0x344]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [ebp - 0x31c]
inc dword [ebp - 0x328]
mov eax, dword [ebp - 0x310]
push dword [ebp - 0x328]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x3c]
push 0x29c
lea eax, [ebp - 0x304]
push edi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
inc dword [ebp - 0x318]
jmp 0x759d2e2e
cmp dword [0x75bc8ca8], edi
je 0x759d2e19
push edi
push edi
push esi
push esi
push esi
push esi
push esi
push dword [ebp - 0x304]
push 0x759d38f0
push edi
push edi
push 0xa
call fcn.759c26bf
add esp, 0x30
push 0x29c
lea eax, [ebp - 0x304]
push edi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
inc dword [ebp - 0x340]
lea eax, [ebp - 0x304]
push eax
push dword [ebp - 0x340]
mov ecx, dword [ebp - 0x320]
call fcn.75ba40eb
test eax, eax
jne 0x759d2e6d
jmp 0x759d2c89
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ebx, dword [ebp - 0x310]
cmp dword [ebp - 0x318], edi
jne 0x759ca852
xor edi, edi
cmp dword [0x75bc8ca8], edi
je 0x759d2e9d
push edi
push edi
push esi
push esi
push esi
push esi
push esi
push esi
push 0x759d37e8
jmp 0x759d2bed
xor edi, edi
mov eax, dword [ebp - 0x310]
cmp eax, edi
je 0x759d2ead
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 4
jmp 0x759d2538
mov eax, dword [ebp - 0x314]
mov eax, dword [eax + 0x6c]
cmp eax, 3
je 0x759d2ed4
cmp eax, 2
je 0x759d2ed4
mov eax, dword [ebp - 0x310]
test eax, eax
jmp 0x759d2640
mov eax, dword [ebp + 8]
push ebx
or eax, 0x40000000
push eax
mov ecx, 0x75bccad8
call fcn.759d8dd3
mov esi, eax
mov eax, dword [ebp - 0x310]
test eax, eax
je 0x759d2efa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, esi
jmp 0x759ca932
mov ecx, dword [ebp - 0x314]
push 0
push 1
call fcn.759c7ee8
jmp 0x759ca879
cmp dword [ebp - 0x330], 0
jne 0x759ca88b
test dword [0x75bcc8fc], edi
jne 0x759d2f37
cmp dword [ebp + 8], 0x4000010
jne 0x759ca88b
push ebx
call fcn.75ad1de5
pop ecx
jmp 0x759ca88b
push ebx
push dword [ebp + 8]
mov ecx, 0x75bc8d98
call fcn.75af59cd
mov dword [ebp - 0x30c], eax
test eax, eax
je 0x759ca89c
jmp 0x759ca8b6
test esi, edi
je 0x759d2f78
mov eax, dword [ebx]
push 0
push ebx
call dword [eax + 0x10]
test eax, eax
jne 0x759ca8a8
push ebx
push dword [ebp + 8]
mov ecx, 0x75bc93c8
call fcn.75afa56f
mov dword [ebp - 0x30c], eax
test eax, eax
je 0x759ca8a8
jmp 0x759ca8b6
test dword [ecx + 0x42c], edi
je 0x759ca8b6
push ebx
push dword [ebp + 8]
call fcn.75b1491d
mov dword [ebp - 0x30c], eax
jmp 0x759ca8b6
mov dword [ebp - 0x30c], 1
jmp 0x759ca8d0
cmp dword [ebp - 0x324], 6
je 0x759d24ec
jmp 0x759ca8f7
mov eax, dword [ebx]
push 0
push ebx
call dword [eax + 0x10]
jmp 0x759d24fe
mov ecx, dword [eax]
push ebx
push dword [ebp + 8]
push eax
call dword [ecx + 0x10]
mov dword [ebp - 0x30c], eax
jmp 0x759d8da8
cmp dword [ebp - 0x330], 0
jne 0x759ca906
push ebx
call fcn.75ad1de5
pop ecx
jmp 0x759ca906
mov dword [ebp - 0x30c], 2
mov byte [eax + 0x54], 0
jmp 0x759ca91e
mov eax, dword [esi + 0x60]
add ecx, 0xfffffff4
test eax, eax
je 0x759d30bf
cmp ecx, 0xb
ja case.default.0x759d3042
movzx ecx, byte [ecx + 0x759d371c]
jmp dword [ecx*4 + 0x759d3710]
push dword [ebp + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
jmp 0x759d3cca
mov ecx, esi
call fcn.75acb269
push dword [esi + 4]
lea ecx, [ebp - 0x338]
mov ebx, eax
call fcn.759c6e99
push dword [eax]
mov ecx, dword [ebx]
push 0
push ebx
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x338]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759d3093
test ebx, ebx
jne 0x759d3093
mov ecx, esi
call fcn.75acb269
mov ebx, eax
mov eax, dword [esi + 0x60]
mov ecx, dword [eax]
push ebx
push dword [ebp + 8]
push eax
call dword [ecx + 0xc]
mov dword [ebp - 0x30c], eax
cmp eax, 2
jne 0x759d30b2
mov ecx, esi
call fcn.75accdc5
mov eax, dword [ebx]
push 0
push ebx
call dword [eax + 0x30]
jmp case.default.0x759d30c8
cmp ecx, 9
ja case.default.0x759d30c8
jmp dword [ecx*4 + 0x759d3728]
mov eax, dword [ebp + 8]
sub eax, 0xf000004
je 0x759d327b
sub eax, 0xc
je 0x759d30fe
sub eax, 0x20
je 0x759d30f6
sub eax, 0xf5
jne 0x759d310a
mov edi, dword [0x75bc81f8]
jmp 0x759d3104
mov edi, dword [0x75bc8c80]
jmp 0x759d3104
mov edi, dword [0x75bc82e8]
cmp word [edi], 0
jne 0x759d311d
cmp dword [ebp + 8], 0xf000125
mov edi, 0x759d37ac
je 0x759d311d
mov edi, 0x759d377c
mov eax, dword [ebp - 0x32c]
test dword [0x75bc8da4], eax
je 0x759d3183
mov ecx, esi
call fcn.75acb269
mov ebx, eax
mov eax, dword [ebx]
push ebx
call dword [eax + 4]
push edi
lea ecx, [ebp - 0x338]
call fcn.759c6e99
push dword [eax]
mov ecx, dword [ebx]
push 0
push ebx
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x338]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push ebx
push dword [ebp + 8]
mov ecx, 0x75bc8d98
call fcn.75af59cd
mov dword [ebp - 0x30c], eax
mov eax, dword [ebx]
push ebx
call dword [eax + 8]
cmp dword [ebp - 0x30c], 0
jne 0x759d3207
mov eax, dword [ebp - 0x32c]
test dword [0x75bc93d4], eax
je 0x759d31a9
push edi
push dword [ebp + 8]
mov ecx, 0x75bc93c8
call fcn.75afa502
mov dword [ebp - 0x30c], eax
test eax, eax
jne 0x759d3207
mov eax, dword [0x75bcde24]
test eax, eax
je 0x759d3207
mov ecx, dword [ebp - 0x32c]
test dword [eax + 0x42c], ecx
je 0x759d3207
push 0
call fcn.759c9083
pop ecx
push edi
lea ecx, [ebp - 0x344]
mov ebx, eax
call fcn.759c6e99
push dword [eax]
mov ecx, dword [ebx]
push 0
push ebx
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x344]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [0x75bcde24]
push ebx
push dword [ebp + 8]
call fcn.75b1491d
mov dword [ebp - 0x30c], eax
mov eax, dword [ebx]
push ebx
call dword [eax + 8]
test byte [0x75bcc8fc], 1
je 0x759d3220
cmp dword [0x75bcca04], 0
je 0x759d3220
push edi
call fcn.75ad1dad
pop ecx
cmp dword [ebp + 8], 0xf000125
jne 0x759d3248
cmp byte [0x75bccd0d], 0
je 0x759d3248
inc dword [esi + 0x78]
cmp dword [esi + 0x78], 0xa
jg 0x759d3248
mov eax, dword [ebp - 0x310]
test eax, eax
jmp 0x759d2ea5
cmp dword [ebp - 0x30c], 0
jne 0x759ca91e
cmp byte [0x75bccd0d], 0
jne 0x759ca91e
push edi
push dword [ebp + 8]
mov ecx, 0x75bccad8
call fcn.75acc57c
mov dword [ebp - 0x30c], eax
jmp 0x759ca91e
test dword [0x75bcc8fc], 0x400
jne 0x759d329d
test byte [0x75bc93d4], 0x10
jne 0x759d329d
test byte [0x75bc8da4], 0x10
je 0x759d2c17
push 6
jmp 0x759d2538
xor ebx, ebx
push ebx
push ebx
push 0x759d3764
mov dword [ebp - 0x314], ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
push 0x759d3750
push eax
mov dword [esi + 0x44], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x759d3305
lea ecx, [ebp - 0x330]
push ecx
push 0x759ca6ac
mov edi, 0x75a097ec
push edi
call eax
test eax, eax
jne 0x759d3305
mov eax, dword [ebp - 0x330]
mov ecx, dword [eax]
lea edx, [ebp - 0x314]
push edx
push edi
push ebx
push eax
call dword [ecx + 0xc]
mov eax, dword [ebp - 0x330]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x314]
cmp eax, ebx
jne 0x759d331c
mov eax, dword [ebp - 0x310]
cmp eax, ebx
jmp 0x759d2640
lea edx, [ebp - 0x305]
push edx
push dword [0x75bc9490]
mov byte [ebp - 0x305], bl
push dword [esi + 0x6c]
mov ecx, dword [eax]
push dword [esi]
push eax
call dword [ecx + 0xc]
mov dword [esi], ebx
cmp eax, ebx
jne 0x759d3367
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x310]
mov dword [ebp - 0x314], ebx
cmp byte [ebp - 0x305], bl
je 0x759d3315
cmp eax, ebx
jmp 0x759d2c3f
push 1
call fcn.759c9083
pop ecx
push 3
mov edi, eax
mov eax, dword [edi]
push 1
push edi
call dword [eax + 0x34]
push edi
push 0xb000000
mov ecx, 0x75bccad8
call fcn.759d8dd3
mov eax, dword [ebp - 0x314]
mov dword [esi + 0xa8], eax
mov eax, dword [edi]
push edi
call dword [eax + 8]
mov eax, dword [ebp - 0x310]
jmp 0x759d3360
mov eax, dword [esi + 0xa8]
test eax, eax
je 0x759d2c47
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x1c]
mov eax, dword [esi + 0xa8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x310]
and dword [esi + 0xa8], 0
test eax, eax
jmp 0x759d2c3f
cmp dword [esi + 0xa8], 0
je case.0x759d3042.0
cmp dword [esi + 4], 0
je case.0x759d3042.0
mov eax, dword [ebp - 0x32c]
mov ebx, 0xe000000
test dword [0x75bc8da4], eax
je 0x759d345d
mov ecx, esi
call fcn.75acb269
mov edi, eax
mov eax, dword [edi]
push edi
call dword [eax + 4]
push dword [esi + 4]
lea ecx, [ebp - 0x334]
call fcn.759c6e99
push dword [eax]
mov ecx, dword [edi]
push 0
push edi
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x334]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
push ebx
mov ecx, 0x75bc8d98
call fcn.75af59cd
mov dword [ebp - 0x30c], eax
mov eax, dword [edi]
push edi
call dword [eax + 8]
cmp dword [ebp - 0x30c], 0
jne case.default.0x759d30c8
test dword [0x75bc93d4], 0x4000
je 0x759d3485
push dword [esi + 4]
mov ecx, 0x75bc93c8
push ebx
call fcn.75afa502
mov dword [ebp - 0x30c], eax
test eax, eax
jne case.default.0x759d30c8
mov eax, dword [0x75bcde24]
test eax, eax
je 0x759d34f1
mov ecx, dword [ebp - 0x32c]
test dword [eax + 0x42c], ecx
je 0x759d34f1
xor ebx, ebx
push ebx
call fcn.759c9083
pop ecx
push dword [esi + 4]
lea ecx, [ebp - 0x33c]
mov edi, eax
call fcn.759c6e99
push dword [eax]
mov ecx, dword [edi]
push ebx
push edi
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x33c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [0x75bcde24]
push edi
push dword [ebp + 8]
call fcn.75b1491d
mov dword [ebp - 0x30c], eax
mov eax, dword [edi]
push edi
call dword [eax + 8]
cmp dword [ebp - 0x30c], ebx
jne case.default.0x759d30c8
mov eax, dword [esi + 0xa8]
push dword [esi + 4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov dword [ebp - 0x30c], eax
jmp case.default.0x759d30c8
mov eax, dword [esi + 4]
test eax, eax
je 0x759d3561
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0
inc eax
push eax
mov ecx, 0x75bc8400
call fcn.759c5bb8
test al, al
jne 0x759d3545
mov eax, dword [ebp - 0x310]
test eax, eax
je 0x759d353b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, 0x3fff
jmp 0x759ca932
push dword [esi + 4]
push dword [0x75bc8404]
push dword [0x75bc8400]
call fcn.759b3cf5
test eax, eax
jge case.default.0x759d30c8
mov ecx, dword [0x75bc8400]
jmp 0x759d36cf
mov eax, dword [esi + 4]
test eax, eax
je 0x759d35a8
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0
inc eax
push eax
mov ecx, 0x75bc8adc
call fcn.759c5bb8
test al, al
je 0x759d352b
push dword [esi + 4]
push dword [0x75bc8ae0]
push dword [0x75bc8adc]
call fcn.759b3cf5
test eax, eax
jge case.default.0x759d30c8
mov ecx, dword [0x75bc8adc]
jmp 0x759d36cf
mov eax, dword [esi + 4]
test eax, eax
je 0x759d35f3
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0
inc eax
push eax
mov ecx, 0x75bc8c80
call fcn.759c5bb8
test al, al
je 0x759d352b
push dword [esi + 4]
push dword [0x75bc8c84]
push dword [0x75bc8c80]
call fcn.759b3cf5
test eax, eax
jge case.default.0x759d30c8
mov ecx, dword [0x75bc8c80]
jmp 0x759d36cf
mov eax, dword [esi + 4]
test eax, eax
je 0x759d363e
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0
inc eax
push eax
mov ecx, 0x75bc81f8
call fcn.759c5bb8
test al, al
je 0x759d352b
push dword [esi + 4]
push dword [0x75bc81fc]
push dword [0x75bc81f8]
call fcn.759b3cf5
test eax, eax
jge case.default.0x759d30c8
mov ecx, dword [0x75bc81f8]
jmp 0x759d36cf
mov eax, dword [esi + 4]
test eax, eax
je 0x759d3685
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0
inc eax
push eax
mov ecx, 0x75bc82e8
call fcn.759c5bb8
test al, al
je 0x759d352b
push dword [esi + 4]
push dword [0x75bc82ec]
push dword [0x75bc82e8]
call fcn.759b3cf5
test eax, eax
jge case.default.0x759d30c8
mov ecx, dword [0x75bc82e8]
jmp 0x759d36cf
mov eax, dword [esi + 4]
test eax, eax
je 0x759d36c9
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0
inc eax
push eax
mov ecx, 0x75bc8b00
call fcn.759c5bb8
test al, al
je 0x759d352b
push dword [esi + 4]
push dword [0x75bc8b04]
push dword [0x75bc8b00]
call fcn.759b3cf5
test eax, eax
jge case.default.0x759d30c8
mov ecx, dword [0x75bc8b00]
xor eax, eax
mov word [ecx], ax
and dword [esi + 4], 0
jmp 0x759ca91e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ca92c
mov ecx, dword [0x75bcde24]
test ecx, ecx
jne 0x759d2558
or edi, dword [ebp + 8]
mov eax, dword [esi + 0x60]
mov ecx, dword [eax]
push ebx
push edi
push eax
call dword [ecx + 0xc]
mov edi, eax
cmp edi, 2
je 0x759d25a3
mov eax, dword [ebp - 0x310]
test eax, eax
jne 0x759d25af
mov eax, edi
jmp 0x759ca932
test esi, edi
jne 0x759d2fda
mov eax, dword [ebp - 0x314]
mov eax, dword [eax + 0xa8]
test eax, eax
jne 0x759d2fe7
cmp dword [ebp - 0x30c], 0
jne 0x759d250b
push ebx
push dword [ebp + 8]
mov ecx, 0x75bccad8
call fcn.759d8dd3
mov dword [ebp - 0x30c], eax
jmp 0x759ca8f7