Function at 0x10030822
Capabilities:
Allocate or change rwx memory
Check for software breakpoints
Copy file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.1003e8fc
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
push 0x6c
call fcn.1003e8fc
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1b
rep stosd dword es:[edi], eax
add ebx, 0x68
push ebx
push 0x88
call fcn.1003e8fc
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x10059612
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0
push 8
call fcn.1003e8fc
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x1005803c
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x2c], 0
push 8
call fcn.1003e8fc
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x1005803c
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov ebx, dword [0x1005a431]
call fcn.1000dd36
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x10033bfe
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x10033bfb
cmp dword [ebp - 4], 1
jne 0x1003095f
mov eax, 0x100595c4
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x10030956
push ebx
call fcn.1003e902
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x100309b6
cmp dword [ebp - 4], 2
jne 0x10030988
mov eax, str.user32.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x1003097f
push ebx
call fcn.1003e902
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x100309b6
cmp dword [ebp - 4], 3
jne 0x100309b1
mov eax, str.gdi32.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x100309a8
push ebx
call fcn.1003e902
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x100309b6
jmp 0x10033bfe
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 1
lea eax, [ebp - 8]
push eax
call fcn.10033d49
mov dword [ebp - 0x10], eax
push 0
push 0
push 0
push 1
mov ebx, 0x264
call fcn.10043af0
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10030a01
push ebx
call fcn.1003e902
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.10034e5a
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push dword [ebp - 0x3c]
mov ecx, 2
call fcn.10004748
add esp, 8
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x10030a33
push ebx
call fcn.1003e902
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
nop
nop
cmp dword [ebp - 0x44], esp
je 0x10030a67
push 0x2bf
push 0x4060b12
push 6
call fcn.1003e90e
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x10030a77
push ebx
call fcn.1003e902
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x10030a8a
mov eax, 0x10057240
push eax
push 1
mov ebx, 0x268
call fcn.100401f0
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10030ab4
push ebx
call fcn.1003e902
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10034f0a
mov dword [ebp - 0x1c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x10030ad7
mov eax, 0x10057240
push eax
push 1
mov ebx, 0x244
call fcn.10043bf0
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.10034f2f
test eax, eax
je 0x10030b20
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x10030b20
mov eax, 1
jmp 0x10030b25
mov eax, 0
test eax, eax
je 0x10033bf4
mov dword [ebp - 0x24], 0
mov ebx, dword [ebp - 0x20]
add ebx, 0x3c
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
push 0x2000
push 0x1000
call fcn.100352d0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], esp
push 0x40
push dword [ebp - 0x50]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push 0
push 0xffffffff
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
nop
nop
cmp dword [ebp - 0x54], esp
je 0x10030bbf
push 0x48a
push 0x4060b12
push 6
call fcn.1003e90e
add esp, 0xc
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.100352f3
push 8
call fcn.1003e8fc
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x1005803c
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x1c]
call fcn.10035420
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.1003e902
add esp, 4
mov eax, dword [ebp - 0x40]
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x10030d8c
mov ebx, dword [ebp - 0x28]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10030c64
push 0x571
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10030c81
push 0x571
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.1003045b
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10030cd1
push 0x5a2
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10030cee
push 0x5a2
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.1003045b
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10030d3e
push 0x5a2
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10030d5b
push 0x5a2
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
push dword [ebx]
push dword [ebp - 0x50]
push dword [ebp - 0x44]
call fcn.100352f3
pop eax
pop ebx
pop ecx
jmp 0x10030c2f
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.10035a1f
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10030dba
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10030db6
imul eax, dword [ebx]
jmp 0x10030dab
mov ecx, eax
test ecx, ecx
je 0x10030de2
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1003e902
add esp, 4
pop ebx
call fcn.1003e902
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10030dc0
call fcn.1003e902
add esp, 4
mov eax, 0x1005803c
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.10036944
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x10033be4
cmp dword [ebp - 4], 1
jne 0x10030f59
mov ebx, dword [ebp - 0x30]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10030e46
push 0x712
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10030e63
push 0x712
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x10030e91
mov eax, 0x10057240
push eax
push 2
mov ebx, 0x144
call fcn.1003fec0
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x10030f47
mov ebx, dword [ebp - 0x30]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10030ed8
push 0x761
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10030ef5
push 0x761
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x10030f23
mov eax, 0x10057240
push eax
push 2
mov ebx, 0x144
call fcn.1003fec0
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x10030f47
xor eax, eax
jmp 0x10030f4c
mov eax, 1
test eax, eax
je 0x10030f59
jmp 0x10033bdc
mov ebx, dword [ebp - 0x30]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10030f80
push 0x80d
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10030f9d
push 0x80d
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.1003e8fc
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x1005803c
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x40]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.1003755a
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.1003e902
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x10031037
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0
cmp eax, ecx
jl 0x1003101f
push 0x847
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x10031037
mov eax, 1
jmp 0x1003103c
mov eax, 0
test eax, eax
je 0x10033bdc
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10031074
push 0x872
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10031091
push 0x872
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x100310bc
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x100310cf
push ebx
call fcn.1003e902
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 3
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1003111b
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1003114f
and eax, 0xff
jmp 0x100311a4
cmp ecx, 0x80000201
jne 0x1003115a
cwde
jmp 0x100311a4
cmp ecx, 0x80000301
je 0x100311a4
cmp ecx, 0x80000401
je 0x100311a4
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10031194
cmp ecx, 0x80000601
je 0x10031199
push 0x8fa
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x1003119f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x1005a415]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x100311e0
mov ebx, dword [0x1005a415]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x100311e0
mov eax, 1
jmp 0x100311e5
mov eax, 0
test eax, eax
je 0x10031926
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 9
cmp eax, ecx
jl 0x10031215
push 0xd18
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x10031266
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xa
cmp eax, ecx
jl 0x1003124e
push 0xd41
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x10031266
mov eax, 1
jmp 0x1003126b
mov eax, 0
test eax, eax
je 0x10031921
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xb
cmp eax, ecx
jl 0x1003129b
push 0xd8d
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10031429
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100312e0
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10031314
and eax, 0xff
jmp 0x10031369
cmp ecx, 0x80000201
jne 0x1003131f
cwde
jmp 0x10031369
cmp ecx, 0x80000301
je 0x10031369
cmp ecx, 0x80000401
je 0x10031369
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10031359
cmp ecx, 0x80000601
je 0x1003135e
push 0xdd9
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10031364
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100313b5
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10031411
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xb
cmp eax, ecx
jl 0x10031451
push 0xe49
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x1003151d
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100314a9
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10031505
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xb
cmp eax, ecx
jl 0x10031545
push 0xebe
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x10031921
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.1003045b
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1003159d
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x100315dd
and eax, 0xff
jmp 0x10031632
cmp ecx, 0x80000201
jne 0x100315e8
cwde
jmp 0x10031632
cmp ecx, 0x80000301
je 0x10031632
cmp ecx, 0x80000401
je 0x10031632
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10031622
cmp ecx, 0x80000601
je 0x10031627
push 0xf57
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x1003162d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
push eax
push dword [ebp - 0x38]
call fcn.1003045b
mov dword [ebp - 0x38], eax
push 8
call fcn.1003e8fc
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x1005803c
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x38]
call fcn.1003755a
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0
cmp eax, ecx
jl 0x100316a4
push 0xffa
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10031832
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100316e9
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1003171d
and eax, 0xff
jmp 0x10031772
cmp ecx, 0x80000201
jne 0x10031728
cwde
jmp 0x10031772
cmp ecx, 0x80000301
je 0x10031772
cmp ecx, 0x80000401
je 0x10031772
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10031762
cmp ecx, 0x80000601
je 0x10031767
push 0x1046
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x1003176d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100317be
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x1003181a
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0
cmp eax, ecx
jl 0x1003185a
push 0x10b6
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10031921
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100318b2
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x1003190e
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
jmp 0x10033bdc
mov ebx, dword [0x1005a415]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x100333fb
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 5
cmp eax, ecx
jl 0x10031978
push 0x11fa
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x10031a02
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 6
cmp eax, ecx
jl 0x100319b1
push 0x1223
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x10031a02
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 8
cmp eax, ecx
jl 0x100319ea
push 0x124c
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x10031a02
mov eax, 1
jmp 0x10031a07
mov eax, 0
test eax, eax
je 0x10031cb4
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xc
cmp eax, ecx
jl 0x10031a37
push 0x139e
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10031bc5
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10031a7c
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10031ab0
and eax, 0xff
jmp 0x10031b05
cmp ecx, 0x80000201
jne 0x10031abb
cwde
jmp 0x10031b05
cmp ecx, 0x80000301
je 0x10031b05
cmp ecx, 0x80000401
je 0x10031b05
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10031af5
cmp ecx, 0x80000601
je 0x10031afa
push 0x13ea
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10031b00
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10031b51
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10031bad
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xc
cmp eax, ecx
jl 0x10031bed
push 0x145a
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10031cb4
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10031c45
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10031ca1
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 5
cmp eax, ecx
jl 0x10031cdc
push 0x151b
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x10031d66
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 7
cmp eax, ecx
jl 0x10031d15
push 0x1544
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x10031d66
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xb
cmp eax, ecx
jl 0x10031d4e
push 0x156d
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x10031d66
mov eax, 1
jmp 0x10031d6b
mov eax, 0
test eax, eax
je 0x10032218
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x12
cmp eax, ecx
jl 0x10031d9b
push 0x19a0
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10031de9
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x10031dd4
push 0x19c9
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10031de9
xor eax, eax
jmp 0x10031dee
mov eax, 1
test eax, eax
je 0x10031eb1
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10031e3d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10031e99
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x12
cmp eax, ecx
jl 0x10031ed9
push 0x1a3b
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10032067
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10031f1e
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10031f52
and eax, 0xff
jmp 0x10031fa7
cmp ecx, 0x80000201
jne 0x10031f5d
cwde
jmp 0x10031fa7
cmp ecx, 0x80000301
je 0x10031fa7
cmp ecx, 0x80000401
je 0x10031fa7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10031f97
cmp ecx, 0x80000601
je 0x10031f9c
push 0x1a87
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10031fa2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10031ff3
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x1003204f
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x1003208f
push 0x1af7
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10032218
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100320d4
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10032108
and eax, 0xff
jmp 0x1003215d
cmp ecx, 0x80000201
jne 0x10032113
cwde
jmp 0x1003215d
cmp ecx, 0x80000301
je 0x1003215d
cmp ecx, 0x80000401
je 0x1003215d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1003214d
cmp ecx, 0x80000601
je 0x10032152
push 0x1b43
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10032158
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100321a9
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10032205
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 5
cmp eax, ecx
jl 0x10032240
push 0x1c14
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x100322ca
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 9
cmp eax, ecx
jl 0x10032279
push 0x1c3d
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x100322ca
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xb
cmp eax, ecx
jl 0x100322b2
push 0x1c66
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x100322ca
mov eax, 1
jmp 0x100322cf
mov eax, 0
test eax, eax
je 0x1003277c
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x12
cmp eax, ecx
jl 0x100322ff
push 0x209f
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x1003234d
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x10032338
push 0x20c8
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x1003234d
xor eax, eax
jmp 0x10032352
mov eax, 1
test eax, eax
je 0x10032415
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100323a1
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x100323fd
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x12
cmp eax, ecx
jl 0x1003243d
push 0x213a
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100325cb
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10032482
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100324b6
and eax, 0xff
jmp 0x1003250b
cmp ecx, 0x80000201
jne 0x100324c1
cwde
jmp 0x1003250b
cmp ecx, 0x80000301
je 0x1003250b
cmp ecx, 0x80000401
je 0x1003250b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100324fb
cmp ecx, 0x80000601
je 0x10032500
push 0x2186
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10032506
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10032557
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x100325b3
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x100325f3
push 0x21f6
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x1003277c
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10032638
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1003266c
and eax, 0xff
jmp 0x100326c1
cmp ecx, 0x80000201
jne 0x10032677
cwde
jmp 0x100326c1
cmp ecx, 0x80000301
je 0x100326c1
cmp ecx, 0x80000401
je 0x100326c1
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100326b1
cmp ecx, 0x80000601
je 0x100326b6
push 0x2242
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x100326bc
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x1003270d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10032769
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 5
cmp eax, ecx
jl 0x100327a4
push 0x2324
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x1003282e
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xa
cmp eax, ecx
jl 0x100327dd
push 0x234d
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x1003282e
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xe
cmp eax, ecx
jl 0x10032816
push 0x2376
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x1003282e
mov eax, 1
jmp 0x10032833
mov eax, 0
test eax, eax
je 0x10032db9
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1003286f
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100328a3
and eax, 0xff
jmp 0x100328f8
cmp ecx, 0x80000201
jne 0x100328ae
cwde
jmp 0x100328f8
cmp ecx, 0x80000301
je 0x100328f8
cmp ecx, 0x80000401
je 0x100328f8
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100328e8
cmp ecx, 0x80000601
je 0x100328ed
push 0x2806
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x100328f3
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x10032925
push 0x2858
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10032973
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x18
cmp eax, ecx
jl 0x1003295e
push 0x2881
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10032973
xor eax, eax
jmp 0x10032978
mov eax, 1
test eax, eax
je 0x10032a3b
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100329c7
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10032a23
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x10032a63
push 0x28f3
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10032bf1
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10032aa8
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10032adc
and eax, 0xff
jmp 0x10032b31
cmp ecx, 0x80000201
jne 0x10032ae7
cwde
jmp 0x10032b31
cmp ecx, 0x80000301
je 0x10032b31
cmp ecx, 0x80000401
je 0x10032b31
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10032b21
cmp ecx, 0x80000601
je 0x10032b26
push 0x293f
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10032b2c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10032b7d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10032bd9
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x18
cmp eax, ecx
jl 0x10032c19
push 0x29af
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10032da7
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10032c5e
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10032c92
and eax, 0xff
jmp 0x10032ce7
cmp ecx, 0x80000201
jne 0x10032c9d
cwde
jmp 0x10032ce7
cmp ecx, 0x80000301
je 0x10032ce7
cmp ecx, 0x80000401
je 0x10032ce7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10032cd7
cmp ecx, 0x80000601
je 0x10032cdc
push 0x29fb
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10032ce2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10032d33
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10032d8f
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 5
cmp eax, ecx
jl 0x10032de1
push 0x2aec
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x10032e6b
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 9
cmp eax, ecx
jl 0x10032e1a
push 0x2b15
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x10032e6b
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xe
cmp eax, ecx
jl 0x10032e53
push 0x2b3e
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x10032e6b
mov eax, 1
jmp 0x10032e70
mov eax, 0
test eax, eax
je 0x100333f6
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xb
push 0x80000301
push 0
push 3
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10032eac
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10032ee0
and eax, 0xff
jmp 0x10032f35
cmp ecx, 0x80000201
jne 0x10032eeb
cwde
jmp 0x10032f35
cmp ecx, 0x80000301
je 0x10032f35
cmp ecx, 0x80000401
je 0x10032f35
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10032f25
cmp ecx, 0x80000601
je 0x10032f2a
push 0x2fc5
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10032f30
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x10032f62
push 0x3017
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10032fb0
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x18
cmp eax, ecx
jl 0x10032f9b
push 0x3040
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10032fb0
xor eax, eax
jmp 0x10032fb5
mov eax, 1
test eax, eax
je 0x10033078
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10033004
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10033060
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x15
cmp eax, ecx
jl 0x100330a0
push 0x30b2
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x1003322e
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100330e5
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10033119
and eax, 0xff
jmp 0x1003316e
cmp ecx, 0x80000201
jne 0x10033124
cwde
jmp 0x1003316e
cmp ecx, 0x80000301
je 0x1003316e
cmp ecx, 0x80000401
je 0x1003316e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1003315e
cmp ecx, 0x80000601
je 0x10033163
push 0x30fe
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10033169
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100331ba
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10033216
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0x18
cmp eax, ecx
jl 0x10033256
push 0x316e
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100333e4
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1003329b
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100332cf
and eax, 0xff
jmp 0x10033324
cmp ecx, 0x80000201
jne 0x100332da
cwde
jmp 0x10033324
cmp ecx, 0x80000301
je 0x10033324
cmp ecx, 0x80000401
je 0x10033324
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10033314
cmp ecx, 0x80000601
je 0x10033319
push 0x31ba
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x1003331f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10033370
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x100333cc
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 5
cmp eax, ecx
jl 0x10033423
push 0x329d
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x1003382e
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1003345f
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x10033493
and eax, 0xff
jmp 0x100334e8
cmp ecx, 0x80000201
jne 0x1003349e
cwde
jmp 0x100334e8
cmp ecx, 0x80000301
je 0x100334e8
cmp ecx, 0x80000401
je 0x100334e8
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x100334d8
cmp ecx, 0x80000601
je 0x100334dd
push 0x36fe
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x100334e3
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.100038f5
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x10033506
cmp dword [ebp - 0x38], 0xa
jge 0x10033506
mov eax, 1
jmp 0x1003350b
mov eax, 0
test eax, eax
je 0x10033829
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.1003045b
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x10033556
push 0x3805
push 0x4060b12
push 4
call fcn.1003e90e
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10033573
push 0x3805
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x10033829
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xa
cmp eax, ecx
jl 0x100335ac
push 0x3851
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x1003373a
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xc
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100335f1
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10033625
and eax, 0xff
jmp 0x1003367a
cmp ecx, 0x80000201
jne 0x10033630
cwde
jmp 0x1003367a
cmp ecx, 0x80000301
je 0x1003367a
cmp ecx, 0x80000401
je 0x1003367a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1003366a
cmp ecx, 0x80000601
je 0x1003366f
push 0x389d
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10033675
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100336c6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10033722
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xa
cmp eax, ecx
jl 0x10033762
push 0x390d
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10033829
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100337ba
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10033816
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 5
cmp eax, ecx
jl 0x10033856
push 0x39fb
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x100338a7
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xa
cmp eax, ecx
jl 0x1003388f
push 0x3a24
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x100338a7
mov eax, 1
jmp 0x100338ac
mov eax, 0
test eax, eax
je 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xb
cmp eax, ecx
jl 0x100338dc
push 0x3e20
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x1003392a
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xb
cmp eax, ecx
jl 0x10033915
push 0x3e49
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x1003392a
xor eax, eax
jmp 0x1003392f
mov eax, 1
test eax, eax
je 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xc
cmp eax, ecx
jl 0x1003395f
push 0x3e95
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10033aed
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100339a4
mov eax, 0x1005803c
push eax
push 3
mov ebx, 0x19c
call fcn.100429b0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100339d8
and eax, 0xff
jmp 0x10033a2d
cmp ecx, 0x80000201
jne 0x100339e3
cwde
jmp 0x10033a2d
cmp ecx, 0x80000301
je 0x10033a2d
cmp ecx, 0x80000401
je 0x10033a2d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10033a1d
cmp ecx, 0x80000601
je 0x10033a22
push 0x3ee1
push 0x4060b12
push 2
call fcn.1003e90e
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10033a28
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.100038f5
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10033a79
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10033ad5
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
mov ebx, dword [ebp - 0x34]
call fcn.1000bd40
mov eax, 0xc
cmp eax, ecx
jl 0x10033b15
push 0x3f51
push 0x4060b12
push 1
call fcn.1003e90e
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10033bdc
push 0x1005a431
push 4
mov eax, 2
call fcn.1003ef70
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1005a431]
mov dword [ebp - 0x40], ebx
call fcn.1000bd40
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10033b6d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.1003e91a
add esp, 8
mov dword [0x1005a431], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1003e8fc
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x10033bc9
push eax
mov ebx, eax
call fcn.100046dd
inc eax
push eax
call fcn.1003e8fc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x10033bdc
pop eax
pop ebx
pop ecx
jmp 0x10030e07
add esp, 0xc
push dword [ebp - 0x24]
push 0xffffffff
call fcn.10037654
pop ebx
pop ecx
jmp 0x10030928
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x10033c0e
push ebx
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10033c25
push ebx
call fcn.1003e902
add esp, 4
pop ebx
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10033c3e
push ebx
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10033c4e
push ebx
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1003e902
add esp, 4
pop ebx
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10033c88
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10033c84
imul eax, dword [ebx]
jmp 0x10033c79
mov ecx, eax
test ecx, ecx
je 0x10033cb0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.1003e902
add esp, 4
pop ebx
call fcn.1003e902
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10033c8e
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10033cd6
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10033cd2
imul eax, dword [ebx]
jmp 0x10033cc7
mov ecx, eax
test ecx, ecx
je 0x10033d2d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10033cf4
push ebx
call fcn.1003e902
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10033d08
push ebx
call fcn.1003e902
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x10033d1c
push ebx
call fcn.1003e902
add esp, 4
pop ebx
call fcn.1003e902
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10033cdc
call fcn.1003e902
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x10033d45
push ebx
call fcn.1003e902
add esp, 4
mov esp, ebp
pop ebp
ret