Function at 0x6708db20
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, 0x1258
call fcn.67150cc0
mov eax, dword [0x672699e0]
xor eax, esp
mov dword [esp + 0x1254], eax
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x2c], eax
add eax, 0xa
shl eax, 7
movzx eax, ax
lea ecx, [eax + 0x30]
movzx edx, cx
lea ecx, [eax + 0x4d]
add eax, 0x3c
push esi
movzx eax, ax
push edi
mov edi, dword [ebx + 0xc]
mov dword [esp + 0x3c], edx
movzx edx, cx
mov dword [esp + 0x30], eax
lea eax, [ebx + 0x2c]
lea esi, [edi + 4]
mov dword [esp + 0x38], ebx
mov dword [esp + 0x24], edx
mov byte [esp + 0x17], 0
mov dword [esp + 0x10], edi
cmp dword [eax], esi
jge 0x6708dba1
pop edi
mov dword [eax], esi
pop esi
xor al, al
pop ebx
mov ecx, dword [esp + 0x1254]
xor ecx, esp
call fcn.671509a6
add esp, 0x1258
ret
push ebp
lea ebp, [esp + 0xa64]
cmp esi, 0x200
jl 0x6708dbc0
lea ecx, [esi + esi]
push ecx
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov ebp, eax
lea edx, [esp + 0x864]
mov dword [esp + 0x1c], edx
cmp esi, 0x200
jl 0x6708dbe1
push esi
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov dword [esp + 0x1c], eax
cmp byte [esp + 0x1270], 0
mov eax, dword [esp + 0x38]
mov cl, byte [eax + 0x671d2544]
mov byte [esp + 0x13], cl
je 0x6708dc22
mov edx, 0x25cc
mov word [ebp], dx
mov ecx, dword [ebx + 8]
mov edx, dword [ebx]
lea eax, [edi + edi]
push eax
lea eax, [edx + ecx*2]
push eax
lea ecx, [ebp + 2]
push ecx
call sub.MSVCR100.dll_memcpy
add esp, 0xc
inc edi
mov dword [esp + 0x14], edi
jmp 0x6708dc38
mov eax, dword [ebx + 8]
mov ecx, dword [ebx]
lea edx, [edi + edi]
push edx
lea edx, [ecx + eax*2]
push edx
push ebp
call sub.MSVCR100.dll_memcpy
add esp, 0xc
mov eax, 0x200c
cmp word [ebp + edi*2 - 2], ax
jne 0x6708dc49
dec edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x24], 0
mov dword [esp + 0x44], 0xffffffff
cmp edi, 1
je 0x6708e395
movzx esi, word [ebp]
mov eax, esi
mov byte [esp + 0x12], 0
call fcn.6708dad0
mov edi, dword [esp + 0x38]
cmp eax, 1
je 0x6708dc8d
cmp edi, 9
jne 0x6708e0e6
cmp eax, 7
jne 0x6708e0e6
mov al, byte [esp + 0x13]
and al, 1
mov byte [esp + 0x13], al
je 0x6708dcd4
cmp dword [esp + 0x14], 2
jle 0x6708dcd4
cmp si, word [esp + 0x40]
je 0x6708dcb1
mov ecx, 0x9f0
cmp si, cx
jne 0x6708dcd4
mov dx, word [esp + 0x28]
cmp word [ebp + 2], dx
jne 0x6708dcd4
mov ax, word [ebp + 4]
mov byte [esp + 0x12], 1
call fcn.6708dad0
cmp eax, 9
jne 0x6708dcd4
mov byte [esp + 0x12], 0
movzx ebx, byte [esp + 0x12]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
neg ebx
push esi
sbb ebx, ebx
push 0
and ebx, 2
push eax
mov dword [esp + 0x30], ebx
mov dword [esp + 0x38], 0
mov dword [esp + 0x2c], 0xffffffff
call fcn.67150b42
add esp, 0xc
cmp edi, 8
je 0x6708dd54
cmp edi, 0xb
je 0x6708dd54
mov esi, ebx
cmp ebx, dword [esp + 0x14]
jge 0x6708dded
mov edi, dword [esp + 0x1c]
mov ax, word [ebp + esi*2]
call fcn.6708dad0
mov byte [esi + edi], al
cmp al, 1
jne 0x6708dd39
mov dword [esp + 0x2c], esi
jmp 0x6708dd48
cmp dword [esp + 0x20], 0
jge 0x6708dd48
cmp al, 4
jne 0x6708dd48
mov dword [esp + 0x20], esi
inc esi
cmp esi, dword [esp + 0x14]
jl 0x6708dd22
jmp 0x6708dded
xor dl, dl
mov eax, ebx
cmp ebx, esi
jge 0x6708dded
movzx ecx, word [ebp + eax*2]
lea esi, [ecx - 0x900]
mov edi, 0x4ff
cmp si, di
ja 0x6708dd7e
movzx ecx, byte [ecx + 0x671d1f98]
jmp 0x6708ddad
mov esi, 0x25cc
cmp cx, si
jne 0x6708dd8f
mov ecx, 1
jmp 0x6708ddad
mov esi, 0x200c
cmp cx, si
je 0x6708dda8
mov esi, 0x200d
cmp cx, si
mov ecx, 0xa
jne 0x6708ddad
mov ecx, 9
mov esi, dword [esp + 0x1c]
mov byte [eax + esi], cl
cmp cl, 1
jne 0x6708ddd9
mov dword [esp + 0x2c], eax
test dl, dl
jne 0x6708ddd5
mov dx, word [esp + 0x40]
cmp word [ebp + eax*2], dx
jne 0x6708ddd5
mov dl, cl
mov byte [eax + esi], 8
jmp 0x6708dde2
xor dl, dl
jmp 0x6708dde2
cmp cl, 4
jne 0x6708dde2
mov dword [esp + 0x20], eax
inc eax
cmp eax, dword [esp + 0x14]
jl 0x6708dd60
mov eax, dword [esp + 0x14]
dec eax
mov dword [esp + 0x30], 0
mov edx, 4
mov dword [esp + 0x48], eax
cmp eax, ebx
jl 0x6708dec7
mov esi, dword [esp + 0x1c]
nop
mov cl, byte [eax + esi]
cmp cl, 1
je 0x6708de28
cmp cl, 9
jne 0x6708dea1
cmp dword [esp + 0x38], 0xf
je 0x6708dea1
cmp eax, dword [esp + 0x48]
jge 0x6708de3a
cmp cl, 9
jne 0x6708de3a
cmp byte [eax + esi + 1], 1
je 0x6708deb0
movzx ecx, word [ebp + eax*2]
lea esi, [ecx - 0x900]
mov edi, 0x4ff
cmp si, di
ja 0x6708de58
movzx ecx, byte [ecx + 0x671d2498]
jmp 0x6708de5a
xor ecx, ecx
cmp edx, 4
jne 0x6708de69
cmp ecx, edx
jne 0x6708de6e
mov ecx, dword [esp + 0x38]
jmp 0x6708de88
cmp edx, 3
jne 0x6708dec1
cmp ecx, 3
jne 0x6708dec1
mov ecx, dword [esp + 0x38]
cmp ecx, 8
je 0x6708de81
cmp ecx, 0xb
jne 0x6708de83
mov ebx, eax
mov edx, 3
cmp dword [esp + 0x30], 2
jne 0x6708de99
cmp ecx, 0xf
je 0x6708deb9
cmp ecx, 0xe
je 0x6708deb9
inc dword [esp + 0x30]
mov esi, dword [esp + 0x1c]
dec eax
cmp eax, ebx
jge 0x6708de10
mov dword [esp + 0x24], ebx
jmp 0x6708dec7
lea ebx, [eax + 1]
mov dword [esp + 0x24], ebx
jmp 0x6708dec7
mov ebx, eax
mov dword [esp + 0x24], ebx
jmp 0x6708dec7
mov ebx, eax
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
cmp ecx, ebx
jle 0x6708df18
movzx eax, word [ebp + ebx*2 + 2]
cmp ax, di
jne 0x6708dee2
lea eax, [ebx + 1]
jmp 0x6708def3
cmp ax, word [esp + 0x34]
jne 0x6708df18
cmp word [ebp + ebx*2 + 4], di
lea eax, [ebx + 2]
jne 0x6708df18
test eax, eax
jle 0x6708df18
cmp eax, ecx
jge 0x6708df13
mov ecx, dword [esp + 0x2c]
lea edi, [ebp + eax*2]
lea esi, [edi + 2]
sub ecx, eax
rep movsw word es:[edi], word [esi]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov word [ebp + ecx*2], di
mov esi, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 0x2c], edx
test esi, esi
jle 0x6708df4a
movzx eax, word [ebp + esi*2]
lea edx, [eax - 0x900]
mov ecx, 0x4ff
cmp dx, cx
ja 0x6708df44
movzx edx, byte [eax + 0x671d2498]
jmp 0x6708df46
xor edx, edx
mov dword [esp + 0x2c], edx
cmp byte [esp + 0x12], 0
je 0x6708e022
test ebx, ebx
je 0x6708e022
lea eax, [ebx + 1]
cmp eax, dword [esp + 0x14]
jge 0x6708df94
mov cx, word [esp + 0x34]
cmp word [ebp + eax*2], cx
jne 0x6708df73
inc eax
mov ecx, dword [esp + 0x14]
cmp eax, ecx
jge 0x6708df94
cmp word [ebp + eax*2], di
jne 0x6708df83
inc eax
cmp eax, ecx
jge 0x6708df94
mov ecx, 0x200d
cmp word [ebp + eax*2], cx
jne 0x6708df94
inc eax
cmp eax, dword [esp + 0x48]
jge 0x6708dfb0
mov cx, word [ebp + eax*2]
cmp cx, word [esp + 0x40]
jne 0x6708dfb0
cmp word [ebp + eax*2 + 2], di
jne 0x6708dfb0
add eax, 2
mov ecx, dword [esp + 0x38]
cmp ecx, 8
je 0x6708dfce
cmp ecx, 0xb
je 0x6708dfce
cmp ecx, 9
je 0x6708dfce
cmp ecx, 0xf
jne 0x6708dfe2
mov eax, dword [esp + 0x14]
jmp 0x6708dfdb
cmp edx, 4
je 0x6708dfd8
cmp edx, 5
jne 0x6708dfe2
lea eax, [esi + 1]
sub esi, 2
mov dword [esp + 0x20], esi
cmp eax, 2
jle 0x6708dffa
lea esi, [ebp + 4]
lea ecx, [eax - 2]
mov edi, ebp
rep movsw word es:[edi], word [esi]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x20]
mov dx, word [esp + 0x40]
lea ecx, [eax - 2]
sub ebx, 2
cmp byte [esp + 0x13], 0
mov word [ebp + ecx*2], dx
mov edx, dword [esp + 0x2c]
mov word [ebp + eax*2 - 2], di
mov dword [esp + 0x24], ebx
je 0x6708e022
mov dword [esp + 0x44], ecx
cmp edx, 5
jne 0x6708e0bc
mov eax, dword [esp + 0x20]
lea edi, [ebp + eax*2]
movzx eax, word [edi]
mov ecx, 0x9cb
mov esi, 0x671d3490
cmp cx, ax
jae 0x6708e04d
add esi, 8
cmp word [esi], ax
jb 0x6708e045
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
xor ebx, ebx
cmp word [esi + 6], bx
setne bl
sub edx, eax
add edx, edx
push edx
push edi
inc ebx
add eax, ebx
lea ecx, [ebp + eax*2]
push ecx
call dword [sym.imp.MSVCR100.dll_memmove]
mov dx, word [esi + 2]
mov word [edi], dx
mov ax, word [esi + 4]
add esp, 0xc
mov word [edi + 2], ax
cmp ebx, 2
jne 0x6708e096
mov cx, word [esi + 6]
mov edx, dword [esp + 0x20]
mov word [ebp + edx*2 + 4], cx
movzx eax, word [edi]
add dword [esp + 0x14], ebx
lea ecx, [eax - 0x900]
mov edx, 0x4ff
cmp cx, dx
ja 0x6708e0e6
movzx edx, byte [eax + 0x671d2498]
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
cmp edx, 1
jne 0x6708e0e6
movzx eax, word [ebp + esi*2]
test esi, esi
je 0x6708e0dd
lea ebx, [ebx]
mov cx, word [ebp + esi*2 - 2]
dec esi
mov word [ebp + esi*2 + 2], cx
jne 0x6708e0d0
inc ebx
mov word [ebp], ax
mov dword [esp + 0x24], ebx
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
test esi, esi
jle 0x6708e0fe
push esi
push 1
push edi
call fcn.67150b42
add esp, 0xc
mov ebx, dword [esp + 0x14]
inc esi
mov byte [esi + edi - 1], 6
mov eax, esi
mov dword [esp + 0x2c], esi
cmp eax, ebx
jge 0x6708e163
jmp 0x6708e120
movzx ecx, word [ebp + eax*2]
lea edx, [ecx - 0x900]
mov esi, 0x4ff
cmp dx, si
ja 0x6708e13e
movzx ecx, byte [ecx + 0x671d2498]
jmp 0x6708e140
xor ecx, ecx
mov byte [eax + edi], cl
movzx ecx, word [ebp + eax*2]
cmp cx, word [esp + 0x34]
je 0x6708e156
cmp cx, word [esp + 0x28]
jne 0x6708e15a
mov byte [eax + edi], 9
inc eax
cmp eax, ebx
jl 0x6708e120
mov esi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x44]
test ecx, ecx
jle 0x6708e18d
mov eax, esi
cmp eax, ebx
jge 0x6708e187
mov edx, dword [esp + 0x40]
cmp word [ebp + eax*2], dx
jne 0x6708e17e
mov ecx, eax
inc eax
cmp eax, ebx
jl 0x6708e175
mov dword [esp + 0x44], ecx
mov word [ecx + edi], 0x907
mov ecx, esi
cmp ecx, ebx
jge 0x6708e1c2
mov dx, word [ebp + ecx*2]
cmp dx, word [esp + 0x34]
jne 0x6708e1a0
inc ecx
cmp ecx, ebx
jge 0x6708e1c2
mov ax, word [ebp + ecx*2]
cmp ax, word [esp + 0x28]
jne 0x6708e1b1
inc ecx
cmp ecx, ebx
jge 0x6708e1c2
mov edx, 0x200d
cmp word [ebp + ecx*2], dx
jne 0x6708e1c2
inc ecx
mov eax, dword [esp + 0x38]
mov eax, dword [eax*4 + 0x671d3448]
cmp dword [eax], 0
je 0x6708e35e
dec ebx
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x30], eax
cmp ecx, dword [esp + 0x48]
jge 0x6708e362
mov edi, ecx
mov dword [esp + 0x28], edi
cmp ecx, dword [esp + 0x14]
jge 0x6708e348
mov eax, 1
sub eax, dword [esp + 0x1c]
lea edx, [ecx + 1]
mov dword [esp + 0x20], edx
mov dword [esp + 0x34], eax
movzx esi, word [ebp + edi*2]
mov eax, esi
lea edx, [eax - 0x900]
mov edi, 0x4ff
cmp dx, di
ja 0x6708e231
movzx eax, byte [eax + 0x671d1f98]
jmp 0x6708e260
mov edx, 0x25cc
cmp ax, dx
jne 0x6708e242
mov eax, 1
jmp 0x6708e260
mov edx, 0x200c
cmp ax, dx
je 0x6708e25b
mov edx, 0x200d
cmp ax, dx
mov eax, 0xa
jne 0x6708e260
mov eax, 9
mov edi, dword [esp + 0x30]
cmp eax, dword [edi]
jne 0x6708e335
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
add eax, edx
mov dl, byte [eax]
movzx ebx, dl
cmp ebx, dword [edi + 4]
mov edi, dword [esp + 0x28]
jne 0x6708e2f2
cmp edi, dword [esp + 0x48]
jge 0x6708e2f8
mov ebx, dword [esp + 0x1c]
cmp byte [ebx + edi + 1], 9
jne 0x6708e2f8
movzx ebx, word [ebp + edi*2 + 2]
add eax, dword [esp + 0x34]
mov dword [esp + 0x4c], ebx
cmp eax, dword [esp + 0x20]
jle 0x6708e2d0
mov di, word [ebp + eax*2 - 4]
mov word [ebp + eax*2], di
mov edi, dword [esp + 0x1c]
mov bl, byte [eax + edi - 2]
mov byte [eax + edi], bl
dec eax
cmp eax, dword [esp + 0x20]
jg 0x6708e2b0
mov edi, dword [esp + 0x28]
mov ax, word [esp + 0x4c]
mov word [ebp + ecx*2 + 2], ax
mov eax, dword [esp + 0x1c]
mov word [ebp + ecx*2], si
mov byte [ecx + eax], dl
mov byte [eax + ecx + 1], dl
add ecx, 2
add dword [esp + 0x20], 2
mov ebx, dword [esp + 0x3c]
jmp 0x6708e339
mov eax, edi
cmp edi, ecx
jle 0x6708e31e
mov edi, edi
mov di, word [ebp + eax*2 - 2]
mov word [ebp + eax*2], di
mov edi, dword [esp + 0x1c]
mov bl, byte [eax + edi - 1]
mov byte [eax + edi], bl
dec eax
cmp eax, ecx
jg 0x6708e300
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x3c]
mov word [ebp + ecx*2], si
mov byte [ecx + eax], dl
inc ecx
inc dword [esp + 0x20]
jmp 0x6708e339
mov edi, dword [esp + 0x28]
inc edi
mov dword [esp + 0x28], edi
cmp edi, dword [esp + 0x14]
jl 0x6708e211
mov eax, dword [esp + 0x30]
add eax, 8
cmp dword [eax], 0
mov dword [esp + 0x30], eax
jne 0x6708e1e3
jmp 0x6708e362
mov ebx, dword [esp + 0x3c]
cmp dword [esp + 0x44], 0
jle 0x6708e395
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
cmp eax, ecx
jge 0x6708e395
jmp 0x6708e380
mov dx, word [ebp + eax*2]
cmp dx, word [esp + 0x40]
jne 0x6708e390
mov dword [esp + 0x44], eax
inc eax
cmp eax, ecx
jl 0x6708e380
mov eax, dword [ebx + 0x2c]
movzx esi, byte [ebx + 0x14]
and esi, 0x80000001
lea ecx, [ebx + 0x2c]
mov dword [esp + 0x4c], eax
mov eax, dword [ebx + 0x18]
mov edx, dword [eax]
jns 0x6708e3b5
dec esi
or esi, 0xfffffffe
inc esi
mov edx, dword [edx]
push esi
mov esi, dword [esp + 0x18]
push ecx
mov ecx, dword [ebx + 0x30]
push ecx
push esi
push ebp
push eax
call edx
add esp, 0x18
test al, al
je 0x6708e7a1
xor eax, eax
test esi, esi
jle 0x6708e40d
jmp 0x6708e3e0
mov ecx, dword [ebx + 0x34]
and byte [ecx + eax*2], 0xdf
mov edx, dword [ebx + 0x34]
and byte [edx + eax*2], 0xef
lea ecx, [ecx + eax*2]
lea ecx, [edx + eax*2]
mov ecx, dword [ebx + 0x34]
and byte [ecx + eax*2], 0xf0
mov edx, dword [ebx + 0x34]
and byte [edx + eax*2], 0xbf
lea ecx, [ecx + eax*2]
lea ecx, [edx + eax*2]
inc eax
cmp eax, esi
jl 0x6708e3e0
xor edi, edi
test esi, esi
jle 0x6708e47c
jmp 0x6708e420
movzx eax, word [ebp + edi*2]
lea ecx, [eax - 0x900]
mov edx, 0x4ff
cmp cx, dx
ja 0x6708e43e
movzx eax, byte [eax + 0x671d1f98]
jmp 0x6708e46d
mov ecx, 0x25cc
cmp ax, cx
jne 0x6708e44f
mov eax, 1
jmp 0x6708e46d
mov edx, 0x200c
cmp ax, dx
je 0x6708e468
mov ecx, 0x200d
cmp ax, cx
mov eax, 0xa
jne 0x6708e46d
mov eax, 9
cmp eax, 9
sete dl
or byte [esp + 0x1b], dl
inc edi
cmp edi, esi
jl 0x6708e420
cmp byte [esp + 0x126c], 0
je 0x6708e8a6
lea eax, [esp + 0xe64]
mov dword [esp + 0x34], eax
cmp esi, 0x200
jl 0x6708e4ae
lea ecx, [esi + esi]
push ecx
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov dword [esp + 0x34], eax
mov edi, dword [esp + 0x14]
lea esi, [esp + 0x64]
mov dword [esp + 0x30], esi
cmp edi, 0x200
jl 0x6708e4d9
lea edx, [edi*4]
push edx
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov esi, eax
mov dword [esp + 0x30], eax
xor eax, eax
test edi, edi
jle 0x6708e501
mov ecx, dword [esp + 0x34]
mov word [ecx + eax*2], ax
inc eax
cmp eax, edi
jl 0x6708e4e3
test edi, edi
jle 0x6708e501
mov ecx, dword [esp + 0x14]
mov eax, 0x7ff407f4
mov edi, esi
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x14]
mov eax, dword [ebx + 8]
test eax, eax
je 0x6708e54a
mov ecx, dword [ebx]
movzx edx, word [ecx + eax*2 - 2]
push edx
call fcn.670927e0
mov edx, 1
mov ecx, eax
shl edx, cl
add esp, 4
test edx, 0xf8000
jne 0x6708e54d
mov eax, dword [ebx + 8]
mov ecx, dword [ebx]
movzx edx, word [ecx + eax*2 - 2]
push edx
call fcn.670927e0
mov edx, 1
mov ecx, eax
shl edx, cl
add esp, 4
test dl, 0xe
jne 0x6708e54d
and dword [esi], 0xfffffffb
mov ecx, dword [esp + 0x24]
xor eax, eax
test ecx, ecx
js 0x6708e560
and dword [esi + eax*4], 0xffffffef
inc eax
cmp eax, ecx
jle 0x6708e557
mov eax, dword [esp + 0x44]
test eax, eax
js 0x6708e575
and dword [esi + eax*4], 0xffffffdf
and dword [esi + eax*4 + 4], 0xffffffdf
lea eax, [esi + eax*4 + 4]
lea eax, [ecx + 1]
mov dword [esp + 0x2c], eax
cmp eax, edi
jge 0x6708e58c
and dword [esi + eax*4], 0xffffff7f
inc eax
cmp eax, edi
jl 0x6708e580
mov eax, dword [esp + 0x38]
cmp eax, 8
je 0x6708e59a
cmp eax, 0xb
jne 0x6708e60f
lea eax, [ecx - 2]
mov byte [esp + 0x12], 0
cmp eax, 1
jle 0x6708e60f
jmp 0x6708e5b0
movzx edx, word [ebp + eax*2]
mov ecx, edx
lea edi, [ecx - 0x900]
mov ebx, 0x4ff
cmp di, bx
ja 0x6708e7d6
movzx ecx, byte [ecx + 0x671d1f98]
cmp ecx, 1
jne 0x6708e601
cmp byte [esp + 0x12], 0
jne 0x6708e7e9
cmp dx, word [esp + 0x40]
jne 0x6708e7e9
and dword [esi + eax*4], 0xffffff7f
and dword [esi + eax*4 + 4], 0xffffff7f
mov byte [esp + 0x12], 1
dec eax
cmp eax, 1
jg 0x6708e5b0
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x14]
xor eax, eax
test ecx, ecx
jle 0x6708e621
and dword [esi + eax*4], 0xfffffdff
inc eax
cmp eax, ecx
jl 0x6708e615
cmp byte [esp + 0x1b], 0
je 0x6708e661
mov ecx, 2
cmp edi, ecx
jle 0x6708e661
mov eax, esi
movzx edx, word [ebp + ecx*2]
mov ebx, 0x200d
cmp dx, bx
je 0x6708e64c
mov ebx, 0x200c
cmp dx, bx
jne 0x6708e659
and dword [eax + 4], 0xfffffdff
and dword [eax], 0xfffffdff
inc ecx
add eax, 4
cmp ecx, edi
jl 0x6708e633
mov eax, dword [esp + 0x2c]
cmp eax, edi
jge 0x6708e67c
lea esp, [esp]
and dword [esi + eax*4], 0xfffffbff
inc eax
cmp eax, edi
jl 0x6708e670
mov eax, dword [esp + 0x30]
mov esi, dword [esp + 0x3c]
mov edx, dword [esp + 0x34]
push eax
push esi
mov dword [esi + 0x40], edx
call fcn.6708d6a0
mov ecx, dword [esi + 0x1c]
mov eax, dword [ecx + 0x2c]
mov ecx, dword [eax + 4]
mov ebx, dword [eax + 0x14]
mov eax, dword [esp + 0x40]
add esp, 8
cmp eax, 0x10
je 0x6708e6b3
cmp eax, 0xd
jne 0x6708e757
movzx eax, word [ebp]
lea edx, [eax - 0x900]
mov edi, 0x4ff
cmp dx, di
ja 0x6708e757
cmp byte [eax + 0x671d1f98], 4
jne 0x6708e757
xor eax, eax
test ecx, ecx
jle 0x6708e6f1
mov edi, dword [esp + 0x24]
lea edx, [ebx + 8]
cmp dword [edx], edi
jg 0x6708e6f1
inc eax
add edx, 0x14
cmp eax, ecx
jl 0x6708e6e5
dec eax
cmp eax, ecx
jge 0x6708e757
cmp eax, 1
jle 0x6708e757
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [esp + 0x54], ecx
mov ecx, dword [ebx + 8]
mov dword [esp + 0x58], ecx
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0x5c], ecx
mov ecx, dword [ebx + 0x10]
dec eax
mov dword [esp + 0x60], ecx
test eax, eax
jle 0x6708e733
lea ecx, [eax + eax*4]
add ecx, ecx
add ecx, ecx
lea esi, [ebx + 0x14]
shr ecx, 2
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x54]
lea eax, [eax + eax*4]
lea eax, [ebx + eax*4]
mov dword [eax], edx
mov edx, dword [esp + 0x58]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x5c]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x60]
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], edx
mov eax, dword [esp + 0x4c]
push 0
push eax
push esi
call fcn.6708d780
mov byte [esp + 0x1f], al
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0xe70]
add esp, 0xc
cmp ecx, eax
je 0x6708e784
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, dword [esp + 0x30]
lea edx, [esp + 0x64]
cmp edx, eax
je 0x6708e79a
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
cmp byte [esp + 0x13], 0
jne 0x6708e7f3
lea eax, [esp + 0xa64]
cmp eax, ebp
je 0x6708e7b6
push ebp
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x864]
cmp ecx, eax
je 0x6708e7cf
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
xor al, al
jmp 0x6708e8e9
mov edi, 0x25cc
cmp cx, di
je 0x6708e5d7
jmp 0x6708e601
mov byte [esp + 0x12], 0
jmp 0x6708e601
cmp byte [esp + 0x1b], 0
mov esi, dword [esp + 0x3c]
je 0x6708e8b3
xor eax, eax
xor ecx, ecx
cmp dword [esi + 0x2c], eax
jbe 0x6708e87f
add ebx, 8
mov edx, dword [ebx]
movzx edx, word [ebp + edx*2]
mov dword [esp + 0x30], edx
add edx, 0xfffff700
mov edi, 0x4ff
cmp dx, di
ja 0x6708e884
movzx edx, word [esp + 0x30]
movzx edx, byte [edx + 0x671d1f98]
cmp edx, 9
jne 0x6708e847
inc eax
add ebx, 0x14
cmp eax, dword [esi + 0x2c]
jae 0x6708e87f
mov edx, dword [esi + 0x30]
mov edi, dword [edx + eax*4]
mov dword [edx + ecx*4], edi
mov edx, dword [esi + 0x34]
mov di, word [edx + eax*2]
mov word [edx + ecx*2], di
mov edx, dword [esi + 0x3c]
mov edi, dword [edx + eax*8]
mov dword [edx + ecx*8], edi
mov edi, dword [edx + eax*8 + 4]
mov dword [edx + ecx*8 + 4], edi
mov edx, dword [esi + 0x38]
mov edi, dword [edx + eax*4]
mov dword [edx + ecx*4], edi
inc eax
add ebx, 0x14
inc ecx
cmp eax, dword [esi + 0x2c]
jb 0x6708e812
mov dword [esi + 0x2c], ecx
jmp 0x6708e8b3
mov edx, dword [esp + 0x30]
mov edi, 0x25cc
cmp dx, di
je 0x6708e847
mov edi, 0x200c
cmp dx, di
je 0x6708e83e
mov edi, 0x200d
cmp dx, di
jmp 0x6708e83c
push ebx
call fcn.6708cc00
mov esi, dword [esp + 0x40]
add esp, 4
mov esi, dword [esi + 0x34]
or byte [esi], 0x10
lea eax, [esp + 0xa64]
cmp eax, ebp
je 0x6708e8ce
push ebp
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x864]
cmp ecx, eax
je 0x6708e8e7
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x1264]
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.671509a6
add esp, 0x1258
ret