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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4ac
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x44]
mov edi, dword [eax + 0xa0]
mov esi, dword [eax + 0xa4]
mov dword [ebp - 0x3d0], eax
add eax, 0xfc
mov dword [ebp - 0x444], eax
mov edx, dword [edi + 0x10]
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x3e8], esi
mov esi, dword [edi + 8]
mov dword [ebp - 0x3cc], edi
mov ecx, edx
and ecx, 0xfff83fff
test ah, 1
cmovne ecx, edx
test ecx, 0x40000
mov dword [ebp - 0x41c], ecx
je 0x6fcd52f4
mov ebx, ecx
or ch, 0x40
or bh, 0xc0
and dh, 8
cmovne ecx, ebx
mov dword [ebp - 0x41c], ecx
mov edi, dword [ebp - 0x41c]
mov edx, edi
or edx, 0x10000
test edi, 0x4000
cmove edx, edi
mov dword [ebp - 0x41c], edx
and dh, 0x80
je 0x6fcd5327
and dword [ebp - 0x41c], 0xffffffbf
or dword [ebp - 0x41c], 0x20000
mov edi, dword [ebp - 0x41c]
mov edx, edi
and dh, 0xfe
test edi, 0x20000
cmove edx, edi
mov edi, edx
and dl, 0x7f
test edi, 0x10000
cmove edx, edi
mov edi, edx
and edx, 0xfffcfe7f
and esi, 4
cmovne edx, edi
mov edi, edx
and edx, 0xffff3baf
test al, 2
cmovne edx, edi
mov edi, edx
and dh, 0xcf
test al, 0x40
cmove edx, edi
mov eax, edx
and ah, 0x7f
test edx, 0x20000000
cmove eax, edx
mov edi, eax
and ah, 0xbf
test edi, 0x2000000
cmove eax, edi
mov edx, eax
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x3cc]
mov edi, dword [eax + 0x44]
mov dword [ebp - 0x3f0], edi
lea edi, [eax + 0x38]
mov eax, dword [ebp - 0x3d0]
mov dword [ebp - 0x414], edi
mov edi, dword [ebp - 0x3e8]
mov ecx, dword [eax + 0x250]
mov esi, dword [eax + 0x14]
add edi, 0x38
mov ebx, dword [eax + 8]
mov dword [ebp - 0x418], edi
mov edi, dword [eax + 0x10]
mov dword [ebp - 0x450], ecx
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x454], esi
mov esi, eax
mov dword [ebp - 0x3dc], edi
mov ecx, dword [ecx + 0x10]
mov dword [ebp - 0x438], ecx
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x43c], ecx
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0xc]
mov dword [ebp - 0x3e0], eax
imul eax, edi
mov edi, dword [ecx + 0x1c]
mov dword [ebp - 0x410], edi
mov edi, dword [ecx + 0x20]
mov ecx, 0x6a
mov dword [ebp - 0x3ec], eax
xor eax, eax
mov dword [ebp - 0x3f8], edi
lea edi, [ebp - 0x3c0]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x2f0], ebx
mov ecx, dword [ebp - 0x3cc]
mov eax, dword [ecx + 0x20]
mov dword [ebp - 0x2ec], eax
mov eax, dword [esi + 0x64]
mov dword [ebp - 0x32c], eax
mov eax, dword [ecx + 8]
shr eax, 2
and eax, 1
mov dword [ebp - 0x2e8], eax
mov eax, edx
and eax, 0x1000
mov dword [ebp - 0x2e0], eax
lea eax, [ebp - 0x1d7]
and eax, 0xffffffc0
mov dword [ebp - 0x26c], eax
mov eax, dword [esi + 0x6c]
and eax, 1
xor eax, 1
mov dword [ebp - 0x264], eax
mov eax, dword [esi + 0x78]
mov dword [ebp - 0x254], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [ebp - 0x2fc], eax
mov eax, dword [0x70fcbe50]
test eax, eax
je 0x6fcd54b1
call eax
mov ecx, dword [ebp - 0x3e0]
cmp dword [ebp - 0x43c], ecx
jle 0x6fcd6320
mov esi, dword [ebp - 0x450]
mov edx, dword [ebp - 0x438]
mov dword [ebp - 0x428], 0
mov dword [ebp - 0x420], 0
mov edi, esi
mov eax, esi
imul edi, edx
sub eax, 1
mov dword [ebp - 0x46c], eax
mov eax, edx
sub eax, 1
mov dword [ebp - 0x468], eax
mov eax, ebx
mov dword [ebp - 0x470], edi
mov edi, esi
imul edi, ecx
shr eax, 1
mov dword [ebp - 0x42c], eax
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x448], edi
mov edi, edx
imul edi, ebx
imul ebx, ecx
mov dword [ebp - 0x3d4], 0
mov dword [ebp - 0x3e4], 0
mov dword [ebp - 0x460], edi
mov edi, eax
imul edi, edx
mov dword [ebp - 0x400], ebx
mov dword [ebp - 0x45c], edi
lea edi, [edi*8]
mov dword [ebp - 0x464], edi
mov edi, eax
lea eax, [eax*8]
imul eax, ecx
imul edi, ecx
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x41c]
mov dword [ebp - 0x434], edi
mov edi, dword [ebp - 0x3cc]
and eax, 0x1000000
mov dword [ebp - 0x40c], eax
mov eax, dword [ebp - 0x3d0]
add eax, 0x10
mov dword [ebp - 0x474], eax
mov eax, dword [ebp - 0x448]
mov esi, dword [ebp - 0x454]
mov ebx, dword [ebp - 0x3dc]
mov ecx, dword [ebp - 0x3e4]
cdq
idiv esi
imul eax, esi
add eax, dword [ebp - 0x46c]
cdq
idiv dword [ebp - 0x450]
imul eax, ebx
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebp - 0x458]
cmp dword [ebp - 0x3e0], eax
cmove ecx, ebx
test ebx, ebx
mov dword [ebp - 0x3e4], ecx
jle 0x6fcd5c65
mov dword [ebp - 0x3cc], 0
jmp 0x6fcd5758
cmp dword [edi + 0x14], 3
je 0x6fcd5fd3
cmp dword [ebp - 0x3d8], ebx
jge 0x6fcd5a38
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 0x14], 0
mov ecx, dword [ebp - 0x2e8]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x3cc]
test ecx, ecx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x3fc]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x3d0]
mov eax, dword [eax + 0x10]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x44]
mov dword [esp], eax
je 0x6fcd5df0
call fcn.6fcc4c50
mov dword [esi + 0x18], 0
mov ecx, dword [esi + 0x18]
neg eax
mov dword [esi + 0x1c], 0
mov ebx, dword [esi + 0x1c]
neg edx
mov dword [esi + 0x13c], 0
mov dword [esi + 0x140], 0
mov dword [esi + 0x10], ecx
mov dword [esi + 8], ecx
mov dword [esi], ecx
mov ecx, dword [esi + 0x13c]
mov dword [esi + 0x14], ebx
mov dword [esi + 0xc], ebx
mov dword [esi + 4], ebx
mov ebx, dword [esi + 0x140]
mov dword [esi + 0x134], ecx
mov dword [esi + 0x12c], ecx
mov dword [esi + 0x124], ecx
mov ecx, dword [ebp - 0x3d8]
mov dword [esi + 0xec], 0
mov dword [esi + 0x138], ebx
mov dword [esi + 0x130], ebx
mov dword [esi + 0x128], ebx
mov dword [esi + 0x150], ecx
mov dword [esi + 0x14c], ecx
mov dword [esi + 0x148], ecx
mov dword [esi + 0x144], ecx
mov dword [esi + 0x154], ecx
mov dword [esi + 0x1dc], 0
mov dword [esi + 0x178], 0x3f
mov dword [esi + 0x104], eax
mov dword [esi + 0x108], edx
mov eax, dword [ebp - 0x3cc]
mov ecx, dword [ebp - 0x410]
add dword [ebp - 0x3d4], 1
add dword [ebp - 0x3ec], 1
add eax, 1
mov dword [ecx], eax
mov dword [ebp - 0x3cc], eax
mov eax, dword [ebp - 0x3cc]
cmp dword [ebp - 0x3dc], eax
jle 0x6fcd5c65
mov eax, dword [ebp - 0x3d4]
cmp dword [ebp - 0x3e4], eax
jg 0x6fcd5799
mov eax, dword [ebp - 0x3f8]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x3dc]
je 0x6fcd5da5
mov ecx, dword [ebp - 0x3d4]
add eax, ecx
sub eax, dword [ebp - 0x3cc]
sub eax, 1
cmp eax, ecx
mov dword [ebp - 0x3e4], eax
jle 0x6fcd5d90
imul eax, dword [ebp - 0x3ec], 0x1e8
mov esi, dword [ebp - 0x3f0]
mov ebx, dword [ebp - 0x3e8]
mov ecx, dword [ebp - 0x3d0]
mov dword [ebp - 0x404], eax
add esi, eax
lea edx, [esi + 0x144]
mov eax, dword [ebx + 0x44]
mov dword [esp + 0xc], edx
mov edx, dword [ecx + 8]
mov dword [ebp - 0x408], eax
mov eax, dword [ebp - 0x3cc]
add eax, dword [ebp - 0x400]
mov dword [esp + 8], edx
mov edx, dword [ebx + 0x38]
shl eax, 4
add edx, eax
mov dword [esp + 4], edx
add eax, dword [edi + 0x38]
mov dword [esp], eax
call dword [0x70fcbe58]
mov edx, dword [esi + 0x150]
cmp dword [esi + 0x14c], edx
cmovge edx, dword [esi + 0x14c]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x148]
cmp edx, eax
cmovl edx, eax
mov eax, dword [esi + 0x144]
cmp edx, eax
cmovge eax, edx
shl eax, 2
mov dword [ebp - 0x3d8], eax
mov eax, dword [ebp - 0x2e0]
test eax, eax
jne 0x6fcd5d08
mov eax, dword [ebp - 0x3d0]
mov eax, dword [eax + 8]
mov dword [ebp - 0x3f4], eax
mov eax, dword [edi + 0xc]
mov edx, eax
and edx, 0x100
cmp edx, 1
sbb edx, edx
and edx, 0xfffffffa
add edx, 0xc
cmp dword [edi + 0x14], 3
je 0x6fcd5900
mov ebx, dword [esi + 0x174]
test ebx, ebx
jne 0x6fcd5900
mov ebx, dword [esi + 0xf0]
imul edx, ebx
cmp dword [ebp - 0x3d8], edx
jge 0x6fcd5900
mov ecx, dword [ebp - 0x2e0]
test ecx, ecx
jne 0x6fcd5e9d
mov eax, dword [ebp - 0x3f4]
imul ebx, ebx, 0x16
shr eax, 1
mov ecx, eax
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 8], ecx
imul eax, ecx
mov ecx, dword [ebp - 0x3e8]
add eax, dword [ebp - 0x3cc]
lea edx, [eax*8]
mov eax, dword [ecx + 0x3c]
mov dword [ebp - 0x424], edx
add eax, edx
mov dword [esp + 4], eax
mov eax, edx
add eax, dword [edi + 0x3c]
mov dword [esp], eax
call dword [0x70fcbe6c]
mov edx, dword [ebp - 0x424]
cmp eax, ebx
jbe 0x6fcd5e60
mov eax, dword [edi + 0xc]
nop
mov edx, dword [ebp - 0x40c]
xor ebx, ebx
test edx, edx
je 0x6fcd5a30
mov ecx, dword [edi + 0x44]
lea edx, [esi + 0x1d4]
cmp dword [edi + 0x14], 3
mov dword [ebp - 0x3c8], 0
mov dword [ebp - 0x3c4], 0
mov dword [ebp - 0x424], ecx
lea ecx, [ebp - 0x3c8]
cmovne edx, ecx
mov ecx, dword [ebp - 0x3cc]
test ecx, ecx
jle 0x6fcd5de2
mov ecx, dword [ebp - 0x3e0]
test ecx, ecx
jle 0x6fcd5de2
mov ecx, dword [ebp - 0x3d0]
mov ecx, dword [ecx + 0x10]
cmp ecx, dword [ebp - 0x3cc]
jle 0x6fcd5a30
mov ebx, dword [ebp - 0x408]
add ebx, dword [ebp - 0x404]
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x424]
mov dword [ebp - 0x408], ebx
mov ebx, dword [ebp - 0x3e0]
imul ebx, ecx
add ebx, dword [ebp - 0x3cc]
imul ebx, ebx, 0x1e8
lea ebx, [eax + ebx - 0x1e8]
mov eax, dword [ebp - 0x44c]
mov dword [ebp - 0x404], ebx
mov ebx, dword [ebx]
cmp ebx, dword [edx]
je 0x6fcd60f6
mov ebx, dword [ebp - 0x3e0]
lea edx, [ebx - 1]
mov ebx, dword [ebp - 0x424]
imul edx, ecx
add edx, dword [ebp - 0x3cc]
mov ecx, ebx
imul edx, edx, 0x1e8
add ecx, edx
mov dword [ebp - 0x44c], ecx
lea edx, [ebx + edx + 0x1e8]
mov ebx, dword [ebp - 0x408]
mov ecx, dword [ebp - 0x44c]
mov ebx, dword [ebx + 0x154]
cmp dword [edx + 0x154], ebx
cmovle ebx, dword [edx + 0x154]
mov edx, dword [ecx + 0x154]
mov ecx, dword [ebp - 0x404]
cmp ebx, edx
cmovg ebx, edx
mov edx, dword [ecx + 0x154]
cmp ebx, edx
cmovg ebx, edx
nop
lea esi, [esi]
test al, 0x20
jne 0x6fcd5604
mov ebx, dword [ebp - 0x3d0]
mov ecx, dword [ebx + 0xcc]
mov edx, dword [ebx + 0xc0]
mov dword [esp + 0x28], esi
mov dword [ebp - 0x3f4], ecx
mov ecx, ebx
mov ebx, dword [ebp - 0x3fc]
mov dword [esp + 0x2c], ebx
mov ebx, dword [ebp - 0x3e8]
mov ebx, dword [ebx + 0x44]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x41c]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x24], ebx
mov ebx, dword [ebp - 0x3f0]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 0x20], ebx
mov ebx, ecx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x3cc]
lea ecx, [ebp - 0x3c0]
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0x3f4]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x414]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0xe4]
mov dword [esp], eax
mov eax, dword [ebp - 0x418]
call fcn.6fcd1920
mov eax, dword [edi + 0xc]
test ah, 1
jne 0x6fcd5f50
test ah, 0x10
je 0x6fcd5e00
mov ecx, dword [ebp - 0x3fc]
mov dword [esp + 0x34], ecx
mov ecx, dword [ebp - 0x444]
mov edx, dword [edi + 0x14]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp - 0x418]
mov dword [esp + 0x30], edx
mov dword [esp + 0x28], ecx
mov ecx, dword [ebp - 0x414]
mov dword [esp + 0x24], ecx
mov edx, dword [edi + 8]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x41c]
mov dword [esp + 4], esi
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x3d0]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x3cc]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x3f0]
mov dword [esp + 8], eax
lea eax, [ebp - 0x3c0]
mov dword [esp], eax
call fcn.6fce25b0
mov eax, dword [ebp - 0x3cc]
mov ebx, dword [ebp - 0x410]
add dword [ebp - 0x3d4], 1
add dword [ebp - 0x3ec], 1
add eax, 1
mov dword [ebx], eax
mov edx, dword [ebp - 0x2e8]
mov dword [ebp - 0x3cc], eax
lea eax, [esi + 0x124]
test edx, edx
mov edx, dword [esi + 0xec]
cmove eax, esi
test edx, edx
je 0x6fcd5c09
cmp edx, 2
jne 0x6fcd5746
add dword [ebp - 0x440], 3
mov ecx, 3
mov ebx, dword [ebp - 0x420]
mov edx, dword [ebp - 0x428]
mov dword [ebp - 0x3d8], edi
mov edi, dword [eax + ecx*8]
cmp edi, ebx
mov esi, edi
jg 0x6fcd5bd7
not esi
cmp esi, ebx
cmovl esi, ebx
imul edi, edi
add edi, edx
mov edx, dword [eax + ecx*8 + 4]
cmp edx, esi
mov ebx, edx
jg 0x6fcd5bed
not ebx
cmp esi, ebx
cmovge ebx, esi
imul edx, edx
add edx, edi
sub ecx, 1
jne 0x6fcd5bc7
mov edi, dword [ebp - 0x3d8]
mov dword [ebp - 0x420], ebx
mov dword [ebp - 0x428], edx
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add dword [ebp - 0x440], 1
mov edx, ecx
mov esi, eax
imul edx, ecx
imul esi, eax
add edx, dword [ebp - 0x428]
add esi, edx
cmp ecx, dword [ebp - 0x420]
mov dword [ebp - 0x428], esi
jg 0x6fcd5c42
mov esi, dword [ebp - 0x420]
not ecx
cmp esi, ecx
cmovge ecx, esi
cmp eax, ecx
jg 0x6fcd5c4d
not eax
cmp ecx, eax
cmovge eax, ecx
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x3cc]
cmp dword [ebp - 0x3dc], eax
jg 0x6fcd5758
mov ecx, dword [ebp - 0x3d0]
mov eax, dword [ebp - 0x468]
add dword [ebp - 0x410], 4
add dword [ebp - 0x3f8], 4
imul eax, dword [ecx + 0x10]
add dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x438]
add dword [ebp - 0x3e0], eax
mov eax, dword [ebp - 0x470]
add dword [ebp - 0x448], eax
mov eax, dword [ebp - 0x460]
add dword [ebp - 0x400], eax
mov eax, dword [ebp - 0x464]
add dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x45c]
add dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x3e0]
cmp dword [ebp - 0x43c], eax
jg 0x6fcd55a4
mov edi, dword [ebp - 0x420]
mov dword [esp], edi
call fcn.6fcc3e30
mov esi, dword [ebp + 8]
mov dword [esi + 0x24], edi
mov edi, dword [ebp - 0x428]
mov dword [esi + 0x30], eax
mov dword [esi + 0x28], edi
mov edi, dword [ebp - 0x440]
mov dword [esi + 0x2c], edi
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, dword [ebp - 0x430]
mov eax, dword [ebp - 0x3cc]
mov ecx, dword [ebp - 0x42c]
lea eax, [ebx + eax*8]
mov ebx, dword [ebp - 0x3e8]
mov dword [esp + 8], ecx
mov edx, dword [ebx + 0x3c]
add edx, eax
mov dword [esp + 4], edx
add eax, dword [edi + 0x3c]
mov dword [esp], eax
call dword [0x70fcbe6c]
mov ecx, dword [ebp - 0x42c]
mov dword [esp + 8], ecx
mov ecx, dword [ebp - 0x3e8]
mov ebx, eax
mov eax, dword [ebp - 0x3cc]
add eax, dword [ebp - 0x434]
mov edx, dword [ecx + 0x40]
shl eax, 3
add edx, eax
mov dword [esp + 4], edx
add eax, dword [edi + 0x40]
mov dword [esp], eax
call dword [0x70fcbe6c]
add ebx, eax
mov dword [ebp - 0x330], ebx
add dword [esi + 0x154], ebx
add dword [ebp - 0x3d8], ebx
jmp 0x6fcd5841
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
jmp 0x6fcd5746
mov eax, dword [ebp - 0x3dc]
mov edx, dword [ebp - 0x43c]
sub edx, dword [ebp - 0x438]
add eax, 1
cmp edx, dword [ebp - 0x3e0]
jle 0x6fcd577a
mov ebx, dword [ebp - 0x3f8]
xor edx, edx
mov ecx, dword [ebx + 4]
test ecx, ecx
jle 0x6fcd5ddb
mov edx, dword [ebx + 4]
sub edx, 1
add eax, edx
jmp 0x6fcd577a
xor ebx, ebx
jmp 0x6fcd5a30
call fcn.6fcc4820
jmp 0x6fcd5666
mov ecx, dword [ebp - 0x3d8]
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp - 0x444]
mov edx, dword [edi + 0x14]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x474]
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp - 0x418]
mov dword [esp + 0x18], edx
mov edx, esi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 0x10], ecx
mov ecx, dword [ebp - 0x414]
mov dword [esp], eax
lea eax, [ebp - 0x3c0]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x3cc]
call fcn.6fcd1340
jmp 0x6fcd5b60
mov ecx, dword [ebp - 0x3e8]
mov dword [ebp - 0x424], eax
mov eax, dword [ebp - 0x44c]
mov dword [esp + 8], eax
mov eax, dword [ecx + 0x40]
add eax, edx
mov dword [esp + 4], eax
mov eax, dword [edi + 0x40]
add eax, edx
mov dword [esp], eax
call dword [0x70fcbe6c]
mov ecx, dword [ebp - 0x424]
add ecx, eax
cmp ebx, ecx
jb 0x6fcd58fb
mov dword [esi + 0x18], 0
mov eax, dword [esi + 0x18]
mov dword [esi + 0x1c], 0
mov edx, dword [esi + 0x1c]
mov dword [esi + 0x13c], 0
mov dword [esi + 0x140], 0
mov dword [esi + 0x10], eax
mov dword [esi + 8], eax
mov dword [esi], eax
mov eax, dword [esi + 0x13c]
mov dword [esi + 0x14], edx
mov dword [esi + 0xc], edx
mov dword [esi + 4], edx
mov edx, dword [esi + 0x140]
mov dword [esi + 0x134], eax
mov dword [esi + 0x12c], eax
mov dword [esi + 0x124], eax
mov eax, dword [ebp - 0x3d8]
mov dword [esi + 0x138], edx
mov dword [esi + 0x130], edx
mov dword [esi + 0x128], edx
mov dword [esi + 0x150], eax
mov dword [esi + 0x14c], eax
mov dword [esi + 0x148], eax
mov dword [esi + 0x144], eax
mov dword [esi + 0x154], eax
mov dword [esi + 0x1dc], 0
mov dword [esi + 0x178], 0
mov dword [esi + 0xec], 0x10
jmp 0x6fcd5721
mov ebx, dword [ebp - 0x3fc]
mov ecx, dword [ebp - 0x444]
mov dword [esp + 0x34], ebx
mov ebx, dword [ebp - 0x418]
mov edx, dword [edi + 0x14]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp - 0x414]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x30], edx
mov dword [esp + 0x24], ecx
mov edx, dword [edi + 8]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x41c]
mov dword [esp + 4], esi
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x3d0]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x3e0]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x3cc]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x3f0]
mov dword [esp + 8], eax
lea eax, [ebp - 0x3c0]
mov dword [esp], eax
call fcn.6fce20c0
jmp 0x6fcd5b60
mov eax, dword [ebp - 0x3f4]
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x3cc]
mov dword [esp + 0xc], 0x10000
mov dword [esp + 8], eax
imul edx, eax
mov eax, ecx
mov dword [ebp - 0x404], edx
add eax, edx
mov edx, dword [ebp - 0x3d0]
shl eax, 4
add eax, dword [edx + 0xfc]
mov edx, dword [ebp - 0x404]
mov dword [esp + 4], eax
add edx, ecx
shl edx, 4
add edx, dword [edi + 0x38]
mov dword [esp], edx
call dword [0x70fcbe70]
mov ecx, eax
mov eax, dword [ebp - 0x2e0]
test eax, eax
jne 0x6fcd6170
cmp ecx, ebx
jg 0x6fcd6147
mov ebx, dword [ebp - 0x2e8]
mov dword [esi + 0xec], 0
mov eax, dword [esi + 0x1d4]
mov dword [esi + 0x150], ecx
mov edx, dword [esi + 0x1d8]
mov dword [esi + 0x14c], ecx
test ebx, ebx
mov dword [esi + 0x148], ecx
mov dword [esi + 0x144], ecx
mov dword [esi + 0x154], ecx
mov dword [esi + 0x1dc], 1
je 0x6fcd6150
mov dword [esi + 0x13c], eax
mov dword [esi + 0x134], eax
mov dword [esi + 0x12c], eax
mov dword [esi + 0x124], eax
mov eax, dword [esi + 0x1d4]
mov dword [esi + 0x140], edx
mov dword [esi + 0x138], edx
mov dword [esi + 0x130], edx
mov dword [esi + 0x128], edx
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov dword [esi + 0x18], eax
mov dword [esi + 0x10], eax
mov dword [esi + 8], eax
mov dword [esi], eax
mov eax, dword [esi + 0x1d8]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov dword [esi + 0x1c], eax
mov dword [esi + 0x14], eax
mov dword [esi + 0xc], eax
mov dword [esi + 4], eax
jmp 0x6fcd5721
mov eax, dword [ebp - 0x404]
mov eax, dword [eax + 4]
cmp eax, dword [edx + 4]
mov dword [ebp - 0x478], eax
mov eax, dword [ebp - 0x44c]
je 0x6fcd6225
mov ebx, dword [ebp - 0x3e0]
lea edx, [ebx - 1]
mov ebx, dword [ebp - 0x424]
imul edx, ecx
add edx, dword [ebp - 0x3cc]
imul edx, edx, 0x1e8
lea ecx, [ebx + edx]
mov dword [ebp - 0x44c], ecx
lea edx, [ebx + edx + 0x1e8]
jmp 0x6fcd59f0
mov eax, dword [edi + 0xc]
jmp 0x6fcd5a38
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov dword [esi], eax
mov dword [esi + 4], edx
jmp 0x6fcd5721
mov eax, dword [ebp - 0x3f4]
mov edx, dword [ebp - 0x3e0]
mov dword [ebp - 0x44c], ecx
shr eax, 1
imul edx, eax
mov ecx, eax
mov dword [esp + 8], ecx
mov dword [ebp - 0x3f4], ecx
mov ecx, dword [ebp - 0x3d0]
lea eax, [edx*8]
mov dword [ebp - 0x404], edx
mov edx, dword [ebp - 0x3cc]
lea edx, [eax + edx*8]
mov eax, dword [ecx + 0x100]
mov dword [ebp - 0x424], edx
add eax, edx
mov dword [esp + 4], eax
mov eax, edx
add eax, dword [edi + 0x3c]
mov dword [esp], eax
call dword [0x70fcbe6c]
mov ecx, dword [ebp - 0x3f4]
mov edx, dword [ebp - 0x424]
mov dword [esp + 8], ecx
mov ecx, dword [ebp - 0x3d0]
mov dword [ebp - 0x408], eax
mov eax, dword [ecx + 0x104]
add eax, edx
mov edx, dword [ebp - 0x404]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x40]
add edx, dword [ebp - 0x3cc]
lea eax, [eax + edx*8]
mov dword [esp], eax
call dword [0x70fcbe6c]
mov ecx, dword [ebp - 0x44c]
add eax, dword [ebp - 0x408]
add ecx, eax
jmp 0x6fcd6038
mov edx, dword [ebp - 0x3e0]
sub edx, 1
imul ecx, edx
mov edx, dword [ebp - 0x3cc]
add edx, ecx
imul ecx, edx, 0x1e8
mov dword [ebp - 0x47c], ecx
mov ecx, dword [ebp - 0x424]
mov edx, dword [ebp - 0x47c]
add edx, ecx
cmp ebx, dword [edx]
mov dword [ebp - 0x44c], edx
je 0x6fcd6271
mov ebx, ecx
mov ecx, dword [ebp - 0x47c]
lea edx, [ebx + ecx + 0x1e8]
jmp 0x6fcd59f0
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x478]
cmp edx, dword [ecx + 4]
je 0x6fcd629a
mov ebx, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x47c]
lea edx, [ebx + ecx + 0x1e8]
jmp 0x6fcd59f0
mov edx, dword [ebp - 0x424]
mov ecx, dword [ebp - 0x47c]
lea edx, [edx + ecx + 0x1e8]
cmp ebx, dword [edx]
jne 0x6fcd59f0
mov ecx, dword [ebp - 0x478]
cmp ecx, dword [edx + 4]
jne 0x6fcd59f0
mov ecx, dword [ebp - 0x408]
cmp ebx, dword [ecx]
jne 0x6fcd59f0
mov ebx, ecx
mov ecx, dword [ebp - 0x478]
cmp ecx, dword [ebx + 4]
jne 0x6fcd59f0
mov ecx, dword [ebp - 0x44c]
mov ebx, dword [ebx + 0x154]
cmp dword [edx + 0x154], ebx
cmovge ebx, dword [edx + 0x154]
mov edx, dword [ecx + 0x154]
cmp ebx, edx
cmovge edx, ebx
mov ebx, dword [ebp - 0x404]
mov ebx, dword [ebx + 0x154]
cmp edx, ebx
cmovge ebx, edx
jmp 0x6fcd5a30
mov dword [ebp - 0x428], 0
mov dword [ebp - 0x420], 0
mov dword [ebp - 0x440], 0
jmp 0x6fcd5cd7