Function at 0x10009680
Capabilities:
Copy file
Query or enumerate registry value
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1d58
call fcn.10019ae0
push esi
push edi
push ecx
lea edi, [ebp - 0x1d58]
mov ecx, 0x756
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
pop ecx
mov eax, dword [0x100780f0]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x30], 3
mov byte [ebp - 0x1038], 0
push 0xfff
push 0
lea eax, [ebp - 0x1037]
push eax
call fcn.10018f20
add esp, 0xc
mov word [ebp - 0x1248], 0
push 0x206
push 0
lea ecx, [ebp - 0x1246]
push ecx
call fcn.10018f20
add esp, 0xc
mov word [ebp - 0x1458], 0
push 0x206
push 0
lea edx, [ebp - 0x1456]
push edx
call fcn.10018f20
add esp, 0xc
mov word [ebp - 0x1668], 0
push 0x206
push 0
lea eax, [ebp - 0x1666]
push eax
call fcn.10018f20
add esp, 0xc
mov word [ebp - 0x1878], 0
push 0x206
push 0
lea ecx, [ebp - 0x1876]
push ecx
call fcn.10018f20
add esp, 0xc
mov word [ebp - 0x1a88], 0
push 0x206
push 0
lea edx, [ebp - 0x1a86]
push edx
call fcn.10018f20
add esp, 0xc
mov word [ebp - 0x1c98], 0
push 0x206
push 0
lea eax, [ebp - 0x1c96]
push eax
call fcn.10018f20
add esp, 0xc
mov word [ebp - 0x1cb0], 0
xor ecx, ecx
mov dword [ebp - 0x1cae], ecx
mov dword [ebp - 0x1caa], ecx
mov dword [ebp - 0x1ca6], ecx
mov word [ebp - 0x1ca2], cx
mov dword [ebp - 0x1ccc], 0
mov dword [ebp - 0x1cd8], 0
mov esi, esp
push 0x104
lea edx, [ebp - 0x1458]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
cmp esi, esp
call fcn.10015320
lea eax, [ebp - 0x1cb0]
push eax
lea ecx, [ebp - 0x1c98]
push ecx
lea edx, [ebp - 0x1a88]
push edx
lea eax, [ebp - 0x1668]
push eax
lea ecx, [ebp - 0x1458]
push ecx
call fcn.10019030
add esp, 0x14
lea edx, [ebp - 0x1a88]
push edx
lea eax, [ebp - 0x1668]
push eax
call fcn.10018fa0
add esp, 8
lea ecx, [ebp - 0x1668]
push ecx
lea edx, [ebp - 0x1878]
push edx
call fcn.10018ff0
add esp, 8
push 0x10063768
lea eax, [ebp - 0x1878]
push eax
call fcn.10018fa0
add esp, 8
mov ecx, dword [ebp - 8]
add ecx, 4
push ecx
lea edx, [ebp - 0x1668]
push edx
call fcn.10018fa0
add esp, 8
cmp dword [ebp + 8], 0
jne 0x10009a8e
mov esi, esp
lea eax, [ebp - 0x1cc0]
push eax
push 0xf003f
push 0
mov ecx, dword [str.SOFTWAREddAF23D79B_818F_4978_859B_DC524635D590]
push ecx
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x10009988
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x24c]
push eax
call fcn.10018ef0
add esp, 4
test eax, eax
je 0x10009920
mov dword [ebp - 0x18], 0x1000
mov esi, esp
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 0x1038]
push edx
lea eax, [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x24c]
push edx
mov eax, dword [ebp - 0x1cc0]
push eax
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x1000991e
xor eax, eax
jmp 0x1000a6df
jmp 0x1000995e
mov esi, esp
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 0x1038]
push edx
lea eax, [ebp - 0x30]
push eax
push 0
mov ecx, dword [str.7FFFC750_D868_4b59_91E7_477A5E82F0FF]
push ecx
mov edx, dword [ebp - 0x1cc0]
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x1000995e
xor eax, eax
jmp 0x1000a6df
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0xc], eax
mov esi, esp
mov eax, dword [ebp - 0x1cc0]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp esi, esp
call fcn.10015320
jmp 0x100099a5
mov esi, esp
mov ecx, dword [ebp - 0x1cc0]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp esi, esp
call fcn.10015320
xor eax, eax
jmp 0x1000a6df
mov esi, esp
push 0
lea edx, [ebp - 0x1668]
push edx
lea eax, [ebp - 0x1878]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp esi, esp
call fcn.10015320
mov esi, esp
push 0
push 0x80
push 4
push 0
push 3
push 0xc0000000
lea ecx, [ebp - 0x1668]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0x1cb8], eax
mov esi, esp
push 0
push 0
push 0x3600
mov edx, dword [ebp - 0x1cb8]
push edx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0x1ce0], eax
mov esi, esp
push 0
lea eax, [ebp - 0x24]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
lea edx, [ebp - 0x1038]
push edx
mov eax, dword [ebp - 0x1cb8]
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0x1ce4], eax
mov esi, esp
mov ecx, dword [ebp - 0x1cb8]
push ecx
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
cmp esi, esp
call fcn.10015320
mov esi, esp
mov edx, dword [ebp - 0x1cb8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.10015320
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x18]
je 0x10009a7f
xor eax, eax
jmp 0x1000a6df
mov eax, 1
jmp 0x1000a6df
cmp dword [ebp + 8], 0
je 0x1000a6dd
mov esi, esp
push 0
lea ecx, [ebp - 0x1668]
push ecx
lea edx, [ebp - 0x1878]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp esi, esp
call fcn.10015320
test eax, eax
je 0x10009b0c
mov esi, esp
push 0
push 0x80
push 4
push 0
push 3
push 0xc0000000
lea eax, [ebp - 0x1668]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp esi, esp
call fcn.10015320
mov dword [ebp - 0x1cb8], eax
cmp dword [ebp - 0x1cb8], 0
je 0x10009b03
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x1cb8]
mov dword [ecx + 0x20c], edx
jmp 0x10009b0a
xor eax, eax
jmp 0x1000a6df
jmp 0x10009b13
xor eax, eax
jmp 0x1000a6df
push 0x24
push 0
mov eax, dword [ebp - 8]
add eax, 0x288
push eax
call fcn.10018f20
add esp, 0xc
push 0x70
push 0
mov ecx, dword [ebp - 8]
add ecx, 0x218
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 8]
mov dword [edx + 0x218], 0x70
push 8
push 0
lea eax, [ebp - 0x1cf0]
push eax
call fcn.10018f20
add esp, 0xc
push 0x10
push 0
lea ecx, [ebp - 0x1d08]
push ecx
call fcn.10018f20
add esp, 0xc
push 0xffffffffffffffff
push 0
push 0
push 0
push 1
push 1
push 0x7d0
lea ecx, [ebp - 0x1d18]
call fcn.1000db30
lea ecx, [ebp - 0x1d18]
call fcn.1000e4a0
mov word [ebp - 0x1d08], ax
lea ecx, [ebp - 0x1d18]
call fcn.1000e4e0
mov word [ebp - 0x1d06], ax
lea ecx, [ebp - 0x1d18]
call fcn.1000e520
mov word [ebp - 0x1d02], ax
lea ecx, [ebp - 0x1d18]
call fcn.1000e560
mov word [ebp - 0x1d00], ax
lea ecx, [ebp - 0x1d18]
call fcn.1000e5a0
mov word [ebp - 0x1cfe], ax
lea ecx, [ebp - 0x1d18]
call fcn.1000e5e0
mov word [ebp - 0x1cfc], ax
mov esi, esp
lea edx, [ebp - 0x1cf0]
push edx
lea eax, [ebp - 0x1d08]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
cmp esi, esp
call fcn.10015320
push 8
lea ecx, [ebp - 0x1cf0]
push ecx
mov edx, dword [ebp - 8]
add edx, 0x21c
push edx
call fcn.10018b80
add esp, 0xc
push 4
lea eax, [ebp - 0x1ccc]
push eax
mov ecx, dword [ebp - 8]
add ecx, 0x224
push ecx
call fcn.10018b80
add esp, 0xc
push 4
lea edx, [ebp - 0x1ccc]
push edx
mov eax, dword [ebp - 8]
add eax, 0x228
push eax
call fcn.10018b80
add esp, 0xc
mov ecx, dword [ebp - 0x10]
add ecx, 0x10
mov dword [ebp - 0x10], ecx
push 4
lea edx, [ebp - 0x1cd8]
push edx
mov eax, dword [ebp - 8]
add eax, 0x22c
push eax
call fcn.10018b80
add esp, 0xc
push 4
lea ecx, [ebp - 0x1cd8]
push ecx
mov edx, dword [ebp - 8]
add edx, 0x230
push edx
call fcn.10018b80
add esp, 0xc
push 4
lea eax, [ebp - 0x1cd8]
push eax
mov ecx, dword [ebp - 8]
add ecx, 0x234
push ecx
call fcn.10018b80
add esp, 0xc
push 4
lea edx, [ebp - 0x1cd8]
push edx
mov eax, dword [ebp - 8]
add eax, 0x238
push eax
call fcn.10018b80
add esp, 0xc
push 4
lea ecx, [ebp - 0x1cd8]
push ecx
mov edx, dword [ebp - 8]
add edx, 0x23c
push edx
call fcn.10018b80
add esp, 0xc
push 4
lea eax, [ebp - 0x1cd8]
push eax
mov ecx, dword [ebp - 8]
add ecx, 0x240
push ecx
call fcn.10018b80
add esp, 0xc
mov edx, dword [ebp - 0x10]
add edx, 0x18
mov dword [ebp - 0x10], edx
push str.95069N283067I2TN010985P39505O51U
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d20], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d20]
mov dword [eax + 0x244], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x244]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x244]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push str.00000000_00000000
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d24], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d24]
mov dword [eax + 0x248], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x248]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x248]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push 0x100637e8
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d28], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d28]
mov dword [eax + 0x24c], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x24c]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x24c]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push 0x100637fc
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d2c], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d2c]
mov dword [eax + 0x250], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x250]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x250]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push 0x10063810
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d30], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d30]
mov dword [eax + 0x254], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x254]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x254]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push 0x10063824
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d34], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d34]
mov dword [eax + 0x258], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x258]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x258]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push str.000000
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d38], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d38]
mov dword [eax + 0x25c], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x25c]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x25c]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push str.00000000_000.000
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
add eax, 1
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d3c], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d3c]
mov dword [eax + 0x260], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x260]
push ecx
call fcn.10018f20
add esp, 0xc
mov edx, dword [ebp - 0x18]
shl edx, 1
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x260]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x10], edx
push 0x1006386c
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
lea edx, [eax + eax + 4]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
push eax
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d40], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x1d40]
mov dword [ecx + 0x268], edx
mov eax, dword [ebp - 0x18]
push eax
push 0
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x268]
push edx
call fcn.10018f20
add esp, 0xc
push 4
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x268]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
sub eax, 4
push eax
lea ecx, [ebp - 0x1248]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x268]
add eax, 4
push eax
call fcn.10018b80
add esp, 0xc
mov ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x10], ecx
push 0x10063880
lea edx, [ebp - 0x1248]
push edx
call fcn.10018ff0
add esp, 8
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ef0
add esp, 4
lea ecx, [eax + eax + 4]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x18]
push edx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d44], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d44]
mov dword [eax + 0x26c], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x26c]
push ecx
call fcn.10018f20
add esp, 0xc
push 4
lea edx, [ebp - 0x18]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x26c]
push ecx
call fcn.10018b80
add esp, 0xc
mov edx, dword [ebp - 0x18]
sub edx, 4
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x26c]
add edx, 4
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
push 0x10063894
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ff0
add esp, 8
lea edx, [ebp - 0x1248]
push edx
call fcn.10018ef0
add esp, 4
lea eax, [eax + eax + 4]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d48], eax
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x1d48]
mov dword [edx + 0x270], eax
mov ecx, dword [ebp - 0x18]
push ecx
push 0
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x270]
push eax
call fcn.10018f20
add esp, 0xc
push 4
lea ecx, [ebp - 0x18]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x270]
push eax
call fcn.10018b80
add esp, 0xc
mov ecx, dword [ebp - 0x18]
sub ecx, 4
push ecx
lea edx, [ebp - 0x1248]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x270]
add ecx, 4
push ecx
call fcn.10018b80
add esp, 0xc
mov edx, dword [ebp - 0x10]
add edx, dword [ebp - 0x18]
mov dword [ebp - 0x10], edx
push 0x100638a8
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
lea edx, [eax + eax + 4]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
push eax
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d4c], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x1d4c]
mov dword [ecx + 0x274], edx
mov eax, dword [ebp - 0x18]
push eax
push 0
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x274]
push edx
call fcn.10018f20
add esp, 0xc
push 4
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x274]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
sub eax, 4
push eax
lea ecx, [ebp - 0x1248]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x274]
add eax, 4
push eax
call fcn.10018b80
add esp, 0xc
mov ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x10], ecx
push 0x100638bc
lea edx, [ebp - 0x1248]
push edx
call fcn.10018ff0
add esp, 8
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ef0
add esp, 4
lea ecx, [eax + eax + 4]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x18]
push edx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d50], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1d50]
mov dword [eax + 0x278], ecx
mov edx, dword [ebp - 0x18]
push edx
push 0
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x278]
push ecx
call fcn.10018f20
add esp, 0xc
push 4
lea edx, [ebp - 0x18]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x278]
push ecx
call fcn.10018b80
add esp, 0xc
mov edx, dword [ebp - 0x18]
sub edx, 4
push edx
lea eax, [ebp - 0x1248]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x278]
add edx, 4
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
push 0x100638d0
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ff0
add esp, 8
lea edx, [ebp - 0x1248]
push edx
call fcn.10018ef0
add esp, 4
lea eax, [eax + eax + 4]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d54], eax
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x1d54]
mov dword [edx + 0x27c], eax
mov ecx, dword [ebp - 0x18]
push ecx
push 0
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x27c]
push eax
call fcn.10018f20
add esp, 0xc
push 4
lea ecx, [ebp - 0x18]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x27c]
push eax
call fcn.10018b80
add esp, 0xc
mov ecx, dword [ebp - 0x18]
sub ecx, 4
push ecx
lea edx, [ebp - 0x1248]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x27c]
add ecx, 4
push ecx
call fcn.10018b80
add esp, 0xc
mov edx, dword [ebp - 0x10]
add edx, dword [ebp - 0x18]
mov dword [ebp - 0x10], edx
push str.00000000
lea eax, [ebp - 0x1248]
push eax
call fcn.10018ff0
add esp, 8
lea ecx, [ebp - 0x1248]
push ecx
call fcn.10018ef0
add esp, 4
lea edx, [eax + eax + 4]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
push eax
call fcn.10019550
add esp, 4
mov dword [ebp - 0x1d58], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x1d58]
mov dword [ecx + 0x280], edx
mov eax, dword [ebp - 0x18]
push eax
push 0
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x280]
push edx
call fcn.10018f20
add esp, 0xc
push 4
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x280]
push edx
call fcn.10018b80
add esp, 0xc
mov eax, dword [ebp - 0x18]
sub eax, 4
push eax
lea ecx, [ebp - 0x1248]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x280]
add eax, 4
push eax
call fcn.10018b80
add esp, 0xc
mov ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 8]
mov dword [edx + 0x288], 0x24
push 8
push str.ARRM1.2
mov eax, dword [ebp - 8]
add eax, 0x28c
push eax
call fcn.10018b80
add esp, 0xc
mov ecx, dword [ebp - 8]
mov byte [ecx + 0x2a5], 1
mov edx, dword [ebp - 8]
mov byte [edx + 0x2a4], 1
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
mov dword [eax + 0x2a8], ecx
mov eax, 1
jmp 0x1000a6df
xor eax, eax
push edx
mov ecx, ebp
push eax
lea edx, [0x1000a710]
call fcn.10015350
pop eax
pop edx
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10019470
add esp, 0x1d58
cmp ebp, esp
call fcn.10015320
mov esp, ebp
pop ebp
ret 4