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

Disassembly:
sub esp, 0x60
push ebx
push ebp
push esi
push edi
xor esi, esi
mov ebp, dword [esp + 0x84]
mov ecx, 6
xor eax, eax
lea edi, [esp + 0x20]
mov dword [esp + 0x1c], esi
rep stosd dword es:[edi], eax
mov ebx, dword [esp + 0x74]
mov ecx, 0xd
lea edi, [esp + 0x3c]
mov dword [esp + 0x38], esi
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x10], esi
cmp ecx, esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], esi
mov dword [ebp], esi
jbe 0x797379
lea eax, [esp + 0x14]
lea ecx, [esp + 0x10]
push eax
push ecx
push ebx
call fcn.0079f590
add esp, 0xc
test eax, eax
jge 0x797231
mov edx, 1
mov dword [esp + 0x10], edx
jmp 0x797235
mov edx, dword [esp + 0x10]
cmp eax, 0x25f
je 0x79729b
cmp eax, 0x260
je 0x79729b
cmp eax, 0x137
je 0x79729b
cmp eax, 0x133
je 0x79729b
cmp eax, 0x132
je 0x79729b
cmp eax, 0x136
je 0x79729b
cmp eax, 0x134
je 0x79729b
cmp eax, 0x135
je 0x79729b
cmp eax, 0x138
je 0x79729b
cmp eax, 0x167
je 0x79729b
cmp eax, 0x1bc
je 0x79729b
cmp eax, 0x1bd
je 0x79729b
cmp eax, 0x1c4
je 0x79729b
cmp eax, 0x1c5
jne 0x797361
mov edx, dword [esp + 0x80]
mov ecx, dword [ebp]
add edx, 0xfffffff6
cmp ecx, edx
ja 0x797387
mov edi, dword [esp + 0x7c]
lea eax, [eax + eax*2]
mov dword [ecx + edi], esi
mov ecx, dword [ebp]
add ecx, 4
mov dword [ebp], ecx
mov edx, ecx
xor ecx, ecx
mov cl, byte [eax*8 + 0x867ca0]
mov esi, ecx
add esi, 0xffffff8e
cmp esi, 0x77
ja case.0x7972e4.128
xor eax, eax
mov al, byte [esi + 0x797824]
jmp dword [eax*4 + 0x7977e8]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x10]
inc eax
lea edi, [esp + 0x74]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
mov dword [esp + 0x74], 0
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x79734f
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x79734f
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x10]
mov esi, ebx
lea edi, [edx + eax]
jmp 0x79777f
lea ecx, [esp + 0x1c]
push ecx
push eax
call fcn.007971a0
add esp, 8
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x78]
add esi, edx
add ebx, edx
cmp esi, ecx
mov dword [esp + 0x18], esi
jb 0x79720f
mov eax, dword [ebp]
lea edx, [eax + 0x38]
cmp edx, ecx
jbe 0x79779e
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x60
ret
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x10]
inc eax
mov ecx, edx
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x14]
sub ecx, eax
lea edi, [esp + 0x74]
dec ecx
lea esi, [ebx + eax + 1]
mov eax, ecx
mov dword [esp + 0x74], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + ebx + 5]
mov ecx, dword [esp + 0x88]
cmp eax, ecx
jb 0x797361
mov esi, dword [esp + 0x8c]
add ecx, esi
cmp eax, ecx
ja 0x797361
mov eax, dword [ebp]
mov ecx, edx
mov edx, dword [esp + 0x7c]
mov esi, ebx
lea edi, [eax + edx]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
inc dword [esp + 0x5c]
jmp 0x797777
inc dword [esp + 0x60]
mov ecx, dword [esp + 0x10]
add edi, edx
mov eax, ecx
mov esi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x797788
inc dword [esp + 0x64]
jmp 0x797777
inc dword [esp + 0x68]
jmp 0x797754
inc dword [esp + 0x6c]
mov ecx, dword [esp + 0x10]
mov esi, ebx
add edi, edx
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edx, dword [esp + 0x10]
mov eax, dword [ebp]
add eax, edx
mov dword [ebp], eax
jmp 0x797361
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x8c]
lea esi, [esp + 0x38]
lea edi, [eax + ecx]
mov eax, dword [esp + 0x78]
mov ecx, 0xe
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp]
add ecx, 0x38
cmp eax, edx
mov dword [ebp], ecx
jne 0x7977d8
mov ecx, 0xe
lea esi, [esp + 0x38]
mov edi, 0x9edb00
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x60
ret