Function at 0x767858
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffff7c
mov edi, edx
xor edx, edx
mov dword [esp + 4], ecx
mov dword [esp], eax
xor ecx, ecx
mov eax, dword [esp]
mov ebx, dword [eax]
xor eax, eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], ecx
xor ecx, ecx
mov dword [esp + 0x20], ecx
xor eax, eax
mov dword [esp + 0x2c], eax
mov edx, 0x20
mov eax, ebx
call fcn.007587a0
mov ebp, eax
cmp dword [ebx], 0
je 0x7678a8
xor eax, eax
jmp 0x768350
mov ecx, 0x20
xor edx, edx
mov eax, ebp
call fcn.0070f4e0
mov edx, dword [esp + 4]
mov ecx, dword [edx + 8]
mov dword [ebp], ecx
mov dword [ebp + 0x10], edi
mov ecx, dword [esp + 4]
mov dword [ecx + 8], ebp
movzx eax, word [edi]
cmp eax, 0x8e
jne 0x7678df
mov dword [esp + 0x1c], 1
add edi, 2
mov eax, dword [esp]
mov edx, edi
mov si, word [edi]
sub edx, dword [eax + 4]
sar edx, 1
jns 0x7678f1
adc edx, 0
mov ecx, dword [esp]
mov eax, dword [ecx + 8]
mov edx, dword [eax + edx*4]
mov dword [esp + 8], edx
mov ecx, dword [esp + 8]
mov dword [ebp + 0x14], ecx
mov ecx, esi
sub cx, 0x7e
je 0x767921
sub cx, 2
je 0x76792a
sub cx, 3
je 0x767921
sub cx, 2
je 0x76792a
jmp 0x767952
lea eax, [edi + 6]
mov dword [esp + 0x20], eax
jmp 0x767952
movzx edx, word [edi + 6]
mov dword [esp + 0x18], edx
mov ecx, dword [esp]
mov edx, dword [esp + 0x18]
shl edx, 2
mov eax, dword [ecx + 0x10]
add eax, edx
lea ecx, [edi + 8]
mov dword [esp + 0xc], eax
shl dword [esp + 0x18], 1
mov dword [esp + 0x20], ecx
jmp 0x767952
xor ecx, ecx
mov edx, edi
mov eax, dword [esp]
call fcn.0075d5c0
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov dword [ebp + 0x18], ecx
cmp dword [esp + 0x10], 0
jge 0x767b14
movzx eax, si
cmp eax, 0x80
je 0x767989
movzx edx, si
cmp edx, 0x85
jne 0x767990
mov ecx, 2
jmp 0x767995
mov ecx, 1
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x1c], 0
jne 0x7679a4
inc dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov dword [ebp + 0x1c], eax
mov edx, dword [esp]
mov dword [esp + 0x30], edx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x30]
mov edx, dword [eax]
mov dword [esp + 0x38], edx
push 0
push 2
push 0
push 0x200
mov edx, 0x19
mov ecx, dword [esp + 0x44]
shl ecx, 2
push ecx
mov ecx, 2
mov eax, dword [esp + 0x4c]
call fcn.0075b6cc
push 0
push 8
push 0
mov ecx, 2
mov edx, 4
mov eax, dword [esp + 0x44]
call fcn.0075cad0
push eax
xor ecx, ecx
xor edx, edx
mov eax, dword [esp + 0x34]
call fcn.0075e1fc
mov ecx, dword [esp + 8]
mov edx, 6
push ecx
push 2
push 0
mov ecx, 0x10b
mov eax, ebx
call fcn.00759fb8
movzx ecx, si
cmp ecx, 0x80
je 0x767a44
movzx eax, si
cmp eax, 0x85
jne 0x767ac7
push 0
push 0x10b
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x20]
shl eax, 2
mov ecx, dword [edx + 0x14]
add ecx, eax
mov eax, ebx
push ecx
mov ecx, 1
mov edx, 6
call fcn.00759fb8
push 0
push 0x10b
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x20]
inc edx
shl edx, 2
mov eax, dword [ecx + 0x14]
add eax, edx
mov edx, 6
push eax
mov eax, ebx
mov ecx, 3
call fcn.00759fb8
push 0xfffffffffffffffc
push 1
push 0
mov ecx, 0x102
mov edx, 6
mov eax, ebx
call fcn.00759fb8
push 0xfffffffffffffff8
push 3
push 0
mov ecx, 0x102
mov edx, 6
mov eax, ebx
call fcn.00759fb8
jmp 0x767ade
push 0xfffffffffffffffc
push 6
push 0
mov ecx, 0x102
mov edx, 6
mov eax, ebx
call fcn.00759fb8
cmp dword [esp + 0x1c], 0
jne 0x767caf
mov ecx, dword [esp + 0x14]
mov edx, 6
dec ecx
mov eax, ebx
neg ecx
shl ecx, 2
add ecx, 0xfffffffc
push ecx
push 0x200
push 1
mov ecx, 0x102
call fcn.00759fb8
jmp 0x767caf
mov ecx, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x1c], 0
jne 0x767b28
inc dword [esp + 0x14]
movzx eax, si
cmp eax, 0x7e
je 0x767b3b
movzx edx, si
cmp edx, 0x83
jne 0x767b3f
inc dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov dword [ebp + 0x1c], ecx
mov eax, dword [esp]
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x14]
mov dword [esp + 0x40], edx
mov ecx, dword [esp + 0x3c]
mov eax, dword [ecx]
mov ecx, 2
mov dword [esp + 0x44], eax
push 0
push 2
push 0
push 0x200
mov edx, dword [esp + 0x50]
shl edx, 2
push edx
mov edx, 0x19
mov eax, dword [esp + 0x58]
call fcn.0075b6cc
push 0
push 8
push 0
mov ecx, 2
mov edx, 4
mov eax, dword [esp + 0x50]
call fcn.0075cad0
push eax
xor ecx, ecx
xor edx, edx
mov eax, dword [esp + 0x40]
call fcn.0075e1fc
push 0
push 0x10b
mov ecx, dword [esp + 0x10]
mov edx, 6
push ecx
mov ecx, 1
mov eax, ebx
call fcn.00759fb8
push 0
push 2
push 0
push 0x200
mov ecx, dword [esp + 0x24]
mov edx, 0x1b
dec ecx
mov eax, ebx
neg ecx
shl ecx, 2
add ecx, 0xfffffffc
neg ecx
push ecx
mov ecx, 3
call fcn.0075b6cc
mov ecx, dword [esp + 8]
mov edx, 6
push ecx
push 3
push 0
mov ecx, 0x10b
mov eax, ebx
call fcn.00759fb8
xor ecx, ecx
mov dword [esp + 0x24], ecx
cmp dword [esp + 0x1c], 0
jne 0x767c3a
push 0xfffffffffffffffc
push 0x200
push 1
mov ecx, 0x102
mov edx, 6
mov eax, ebx
call fcn.00759fb8
inc dword [esp + 0x24]
movzx ecx, si
cmp ecx, 0x7e
je 0x767c4c
movzx eax, si
cmp eax, 0x83
jne 0x767c72
mov edx, dword [esp + 0x24]
mov ecx, 0x102
neg edx
shl edx, 2
mov eax, ebx
add edx, 0xfffffffc
push edx
push 6
push 0
mov edx, 6
call fcn.00759fb8
inc dword [esp + 0x24]
mov ecx, dword [esp + 0x24]
mov edx, 6
neg ecx
shl ecx, 2
mov eax, ebx
add ecx, 0xfffffffc
push ecx
push 1
push 0
mov ecx, 0x102
call fcn.00759fb8
mov ecx, dword [esp + 0x14]
mov edx, edi
sub ecx, dword [esp + 0x10]
push ecx
push 0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 8]
dec ecx
call fcn.0075d6fc
movzx ecx, si
cmp ecx, 0x80
je 0x767cc4
movzx eax, si
cmp eax, 0x85
jne 0x767cde
mov edx, dword [esp + 0xc]
mov ecx, 0x10b
push edx
push 6
push 0
mov edx, 6
mov eax, ebx
call fcn.00759fb8
mov eax, ebx
call fcn.0075c278
mov dword [esp + 0x28], eax
jmp 0x7681d9
xor edx, edx
xor ecx, ecx
mov dword [ebp + 8], edx
mov dword [ebp + 0xc], ecx
movzx ecx, word [edi + 2]
movzx eax, word [edi + 4]
shl ecx, 0x10
push ebp
or ecx, eax
mov eax, dword [esp + 4]
add ecx, ecx
mov edx, dword [esp + 0x24]
add edi, ecx
mov ecx, edi
call fcn.00768eec
cmp dword [ebx], 0
je 0x767d25
xor eax, eax
jmp 0x768350
cmp dword [esp + 0x10], 0
jge 0x767ea4
push 0
push 0x10b
mov edx, dword [esp + 0x10]
mov ecx, 2
push edx
mov edx, 6
mov eax, ebx
call fcn.00759fb8
movzx eax, si
cmp eax, 0x80
je 0x767d62
cmp eax, 0x85
jne 0x767de6
push 0
push 0x10b
mov edx, dword [esp + 0x14]
mov ecx, 1
push edx
mov edx, 6
mov eax, ebx
call fcn.00759fb8
mov ecx, dword [esp]
mov eax, dword [esp + 0x18]
inc eax
mov edx, 6
shl eax, 2
mov ecx, dword [ecx + 0x14]
add ecx, eax
mov eax, ebx
push ecx
push 6
push 0
mov ecx, 0x10b
call fcn.00759fb8
mov ecx, dword [esp + 0xc]
mov edx, 6
push ecx
push 6
push 0
mov ecx, 0x10b
mov eax, ebx
call fcn.00759fb8
mov ecx, dword [esp]
mov edx, dword [esp + 0x18]
shl edx, 2
mov eax, dword [ecx + 0x14]
add eax, edx
mov edx, 6
push eax
push 1
push 0
mov eax, ebx
mov ecx, 0x10b
call fcn.00759fb8
jmp 0x767e1e
cmp eax, 0x83
jne 0x767e07
push 0
push 0x102
push 0xfffffffffffffffc
mov ecx, 1
mov edx, 6
mov eax, ebx
call fcn.00759fb8
push 0xfffffffffffffffc
push 6
push 0
mov ecx, 0x102
mov edx, 6
mov eax, ebx
call fcn.00759fb8
movzx eax, si
cmp eax, 0x83
je 0x767e2f
cmp eax, 0x85
jne 0x767e6e
mov dword [esp + 0x48], ebx
push 0
push 6
push 0
mov ecx, 1
xor edx, edx
mov eax, ebx
call fcn.0075cad0
mov dword [esp + 0x4c], eax
mov edx, 8
mov eax, dword [esp + 0x48]
call fcn.007587a0
test eax, eax
je 0x767e6e
mov edx, dword [esp + 0x2c]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x4c]
mov dword [eax], ecx
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x1c], 0
jne 0x768099
mov ecx, dword [esp + 0x14]
mov edx, 6
dec ecx
mov eax, ebx
neg ecx
shl ecx, 2
add ecx, 0xfffffffc
push ecx
push 0x200
push 0
mov ecx, 0x102
call fcn.00759fb8
jmp 0x768099
movzx ecx, si
cmp ecx, 0x80
je 0x767ebd
movzx eax, si
cmp eax, 0x85
jne 0x767f6e
push 0
push 0x10b
mov edx, dword [esp + 0x10]
mov eax, ebx
push edx
push 0x200
mov ecx, dword [esp + 0x24]
mov edx, 0x19
shl ecx, 2
push ecx
mov ecx, 2
call fcn.0075b6cc
push 0
push 0x10b
mov ecx, dword [esp + 0x14]
mov edx, 6
push ecx
mov ecx, 1
mov eax, ebx
call fcn.00759fb8
mov ecx, dword [esp]
mov edx, dword [esp + 0x18]
inc edx
shl edx, 2
mov eax, dword [ecx + 0x14]
add eax, edx
mov edx, 6
push eax
push 6
push 0
mov eax, ebx
mov ecx, 0x10b
call fcn.00759fb8
mov ecx, dword [esp + 0xc]
mov edx, 6
push ecx
push 6
push 0
mov ecx, 0x10b
mov eax, ebx
call fcn.00759fb8
mov ecx, dword [esp]
mov edx, dword [esp + 0x18]
shl edx, 2
mov eax, dword [ecx + 0x14]
add eax, edx
mov edx, 6
push eax
push 1
push 0
mov eax, ebx
mov ecx, 0x10b
call fcn.00759fb8
jmp 0x767ff9
push 0
push 0x10b
mov ecx, dword [esp + 0x10]
mov edx, 6
push ecx
mov ecx, 3
mov eax, ebx
call fcn.00759fb8
push 0
push 3
push 0
push 0x200
mov ecx, dword [esp + 0x24]
mov edx, 0x19
shl ecx, 2
mov eax, ebx
push ecx
mov ecx, 2
call fcn.0075b6cc
movzx ecx, si
cmp ecx, 0x83
jne 0x767fdb
push 0
push 0x103
mov eax, dword [esp + 0x18]
mov ecx, 1
inc eax
mov edx, 6
shl eax, 2
push eax
mov eax, ebx
call fcn.00759fb8
mov ecx, dword [esp + 0x10]
mov edx, 6
inc ecx
mov eax, ebx
shl ecx, 2
push ecx
push 6
push 0
mov ecx, 0x103
call fcn.00759fb8
movzx eax, si
cmp eax, 0x83
je 0x76800a
cmp eax, 0x85
jne 0x768049
mov dword [esp + 0x50], ebx
push 0
push 6
push 0
mov ecx, 1
xor edx, edx
mov eax, ebx
call fcn.0075cad0
mov dword [esp + 0x54], eax
mov edx, 8
mov eax, dword [esp + 0x50]
call fcn.007587a0
test eax, eax
je 0x768049
mov edx, dword [esp + 0x2c]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x54]
mov dword [eax], ecx
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x1c], 0
jne 0x768099
cmp dword [esp + 0x10], 0
jge 0x76807f
mov ecx, dword [esp + 0x14]
mov edx, 6
dec ecx
mov eax, ebx
neg ecx
shl ecx, 2
add ecx, 0xfffffffc
push ecx
push 0x200
push 0
mov ecx, 0x102
call fcn.00759fb8
jmp 0x768099
push 0xfffffffffffffffc
push 0x200
push 0
mov ecx, 0x102
mov edx, 6
mov eax, ebx
call fcn.00759fb8
mov edx, 0x16
mov eax, ebx
call fcn.0075c304
mov edx, dword [esp + 0x28]
call fcn.007586dc
mov eax, dword [esp]
call fcn.0075e254
mov edx, dword [ebp + 8]
mov eax, dword [esp]
call fcn.0076b90c
cmp dword [ebx], 0
je 0x7680cd
xor eax, eax
jmp 0x768350
mov eax, ebx
call fcn.0075c278
mov edx, eax
mov eax, dword [ebp + 0xc]
call fcn.0076d350
cmp dword [esp + 0x10], 0
jge 0x768137
movzx eax, si
cmp eax, 0x80
je 0x7680f6
cmp eax, 0x85
jne 0x768118
push 0
push 0x10b
mov edx, dword [esp + 0x14]
mov ecx, 6
push edx
mov edx, 6
mov eax, ebx
call fcn.00759fb8
jmp 0x7681ca
push 0
push 0x102
push 0xfffffffffffffffc
mov ecx, 6
mov edx, 6
mov eax, ebx
call fcn.00759fb8
jmp 0x7681ca
movzx eax, si
cmp eax, 0x80
je 0x768148
cmp eax, 0x85
jne 0x76818c
movzx edx, word [edi]
cmp edx, 0x75
jne 0x76816d
push 0
push 0x10b
mov ecx, dword [esp + 0x10]
mov edx, 6
push ecx
mov ecx, 3
mov eax, ebx
call fcn.00759fb8
push 0
push 0x10b
mov ecx, dword [esp + 0x14]
mov edx, 6
push ecx
mov ecx, 6
mov eax, ebx
call fcn.00759fb8
jmp 0x7681ca
push 0
push 0x10b
mov ecx, dword [esp + 0x10]
mov edx, 6
push ecx
mov ecx, 3
mov eax, ebx
call fcn.00759fb8
push 0
push 0x103
mov ecx, dword [esp + 0x18]
mov edx, 6
inc ecx
mov eax, ebx
shl ecx, 2
push ecx
mov ecx, 6
call fcn.00759fb8
movzx ecx, word [edi]
cmp ecx, 0x75
je 0x7681e5
lea eax, [edi + 6]
mov dword [esp + 0x20], eax
movzx edx, word [edi]
cmp edx, 0x75
jne 0x767cee
xor ecx, ecx
mov dword [ebp + 0xc], ecx
cmp dword [esp + 0x1c], 0
jne 0x7682c4
cmp dword [esp + 0x10], 0
jge 0x76826d
mov dword [esp + 0x58], ebx
add ebp, 0xc
mov dword [esp + 0x5c], ebp
mov ecx, 0x102
mov eax, dword [esp + 0x14]
mov edx, 1
dec eax
neg eax
shl eax, 2
add eax, 0xfffffffc
push eax
push 0x200
push 0
mov eax, ebx
call fcn.0075cad0
mov dword [esp + 0x60], eax
mov edx, 8
mov eax, dword [esp + 0x58]
call fcn.007587a0
mov dword [esp + 0x64], eax
cmp dword [esp + 0x64], 0
je 0x7682c4
mov edx, dword [esp + 0x5c]
mov esi, dword [esp + 0x64]
mov ecx, dword [edx]
mov dword [esi + 4], ecx
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
mov dword [eax], edx
mov ecx, dword [esp + 0x5c]
mov esi, dword [esp + 0x64]
mov dword [ecx], esi
jmp 0x7682c4
mov dword [esp + 0x68], ebx
add ebp, 0xc
mov dword [esp + 0x6c], ebp
mov ecx, 0x103
mov eax, dword [esp + 0x14]
mov edx, 1
dec eax
shl eax, 2
push eax
push 0x200
push 0
mov eax, ebx
call fcn.0075cad0
mov dword [esp + 0x70], eax
mov edx, 8
mov eax, dword [esp + 0x68]
call fcn.007587a0
test eax, eax
je 0x7682c4
mov edx, dword [esp + 0x6c]
mov ecx, dword [edx]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x70]
mov dword [eax], edx
mov ecx, dword [esp + 0x6c]
mov dword [ecx], eax
mov eax, ebx
call fcn.0075c278
mov edx, eax
mov eax, dword [esp + 0x2c]
call fcn.0076d350
mov ecx, dword [esp]
mov edx, 0x21b
mov dword [esp + 0x74], ecx
mov ecx, 0xa
mov esi, dword [esp + 0x74]
mov ebx, dword [esi]
push 0
push 0xa
push 0
push 0x200
push 1
mov eax, ebx
call fcn.0075b6cc
mov dword [esp + 0x78], ebx
mov eax, ebx
mov ecx, dword [esp + 0x74]
add ecx, 0xa4
xor edx, edx
mov dword [esp + 0x7c], ecx
call fcn.0075c304
mov dword [esp + 0x80], eax
mov edx, 8
mov eax, dword [esp + 0x78]
call fcn.007587a0
test eax, eax
je 0x76834d
mov ecx, dword [esp + 0x7c]
mov edx, dword [ecx]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x80]
mov dword [eax], ecx
mov edx, dword [esp + 0x7c]
mov dword [edx], eax
lea eax, [edi + 6]
add esp, 0x84
pop ebp
pop edi
pop esi
pop ebx
ret