Function at 0x10002fc0
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [0x1000c040]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1000c624]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x1000c648]
cmp eax, dword [ecx + 4]
jle 0x10003023
push 0x1000c648
call fcn.10007175
add esp, 4
cmp dword [0x1000c648], 0xffffffff
jne 0x10003023
push 0x10008150
mov dword [0x1000c64c], 0x10009370
call fcn.100074de
push 0x1000c648
call fcn.10007124
add esp, 8
push ebx
push esi
push edi
call fcn.10004410
push 0x10009148
push 0xa
mov dword [ebp - 8], 0
call fcn.10007529
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add esp, 8
mov edi, dword [sym.imp.KERNEL32.dll_FlushInstructionCache]
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x100030c8
mov byte [eax], 0xe9
mov ecx, 0x10006fa0
sub ecx, 0x547cc1
mov dword [eax + 1], ecx
mov dword [eax + 5], 0x90909090
mov byte [eax + 9], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 0xa
push 0x547cbc
call esi
test eax, eax
je 0x100030c8
mov eax, dword [ebp - 0xc]
mov ecx, 0x547cbc
movq xmm0, qword [eax]
movq qword [ecx], xmm0
mov ax, word [eax + 8]
mov word [ecx + 8], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0xa
push ecx
call esi
test eax, eax
je 0x100030c8
push 0xa
push 0x547cbc
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003148
mov ecx, 0x10006fd0
mov byte [eax], 0xe9
sub ecx, 0x547f04
mov dword [eax + 1], ecx
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x547eff
call esi
test eax, eax
je 0x10003148
mov ecx, dword [ebp - 0xc]
mov edx, 0x547eff
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x10003148
push 6
push 0x547eff
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x100031c8
mov ecx, 0x10007080
mov byte [eax], 0xe9
sub ecx, 0x547f85
mov dword [eax + 1], ecx
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x547f80
call esi
test eax, eax
je 0x100031c8
mov ecx, dword [ebp - 0xc]
mov edx, 0x547f80
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x100031c8
push 6
push 0x547f80
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 7
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
mov edx, 0x90909090
test eax, eax
je 0x10003253
mov ecx, 0x10007100
mov byte [eax], 0xe9
sub ecx, 0x547fb8
mov dword [eax + 1], ecx
mov word [eax + 5], dx
lea eax, [ebp - 8]
push eax
push 0x40
push 7
push 0x547fb3
call esi
test eax, eax
je 0x10003253
mov ecx, dword [ebp - 0xc]
mov edx, 0x547fb3
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
mov al, byte [ecx + 6]
mov byte [edx + 6], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 7
push edx
call esi
test eax, eax
je 0x10003253
push 7
push 0x547fb3
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x100032cd
mov ecx, 0x100041a0
mov byte [eax], 0xe9
sub ecx, 0x47db84
mov dword [eax + 1], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x47db7f
call esi
test eax, eax
je 0x100032cd
mov ecx, dword [ebp - 0xc]
mov edx, 0x47db7f
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x100032cd
push 5
push 0x47db7f
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x4b8be4
call esi
test eax, eax
je 0x100032fe
lea eax, [ebp - 8]
mov byte [0x4b8be4], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x4b8be4
call esi
movups xmm0, xmmword [str.Draw_Your_Destiny]
mov ecx, 0x5f9320
mov dword [ebp - 8], 0
movups xmmword [ecx], xmm0
mov ax, word [0x1000949c]
mov word [ecx + 0x10], ax
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x46eced
call esi
test eax, eax
je 0x1000334b
lea eax, [ebp - 8]
mov dword [0x46eced], 0
push eax
push dword [ebp - 8]
push 4
push 0x46eced
call esi
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 4
push 0x547cac
call esi
test eax, eax
je 0x1000337f
lea eax, [ebp - 8]
mov dword [0x547cac], 0
push eax
push dword [ebp - 8]
push 4
push 0x547cac
call esi
push 0x10009148
push 0xa
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x1000340a
mov byte [eax], 0xe9
mov ecx, 0x10005190
sub ecx, 0x47dbb4
mov dword [eax + 1], ecx
mov dword [eax + 5], 0x90909090
mov byte [eax + 9], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 0xa
push 0x47dbaf
call esi
test eax, eax
je 0x1000340a
mov eax, dword [ebp - 0xc]
mov ecx, 0x47dbaf
movq xmm0, qword [eax]
movq qword [ecx], xmm0
mov ax, word [eax + 8]
mov word [ecx + 8], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0xa
push ecx
call esi
test eax, eax
je 0x1000340a
push 0xa
push 0x47dbaf
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x1000348a
mov ecx, 0x100051f0
mov byte [eax], 0xe9
sub ecx, 0x44e7ea
mov dword [eax + 1], ecx
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x44e7e5
call esi
test eax, eax
je 0x1000348a
mov ecx, dword [ebp - 0xc]
mov edx, 0x44e7e5
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x1000348a
push 6
push 0x44e7e5
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003504
mov ecx, 0x10005150
mov byte [eax], 0xe9
sub ecx, 0x44534b
mov dword [eax + 1], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x445346
call esi
test eax, eax
je 0x10003504
mov ecx, dword [ebp - 0xc]
mov edx, 0x445346
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x10003504
push 5
push 0x445346
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x1000357d
mov byte [eax], 0xe9
mov dword [eax + 1], 0x8e
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x51dce1
call esi
test eax, eax
je 0x1000357d
mov ecx, dword [ebp - 0xc]
mov edx, 0x51dce1
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x1000357d
push 6
push 0x51dce1
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x100035f6
mov byte [eax], 0xe9
mov dword [eax + 1], 0xb1
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x52f02d
call esi
test eax, eax
je 0x100035f6
mov ecx, dword [ebp - 0xc]
mov edx, 0x52f02d
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x100035f6
push 6
push 0x52f02d
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003669
mov byte [eax], 0xe9
mov dword [eax + 1], 1
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x539c48
call esi
test eax, eax
je 0x10003669
mov ecx, dword [ebp - 0xc]
mov edx, 0x539c48
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x10003669
push 5
push 0x539c48
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x100036dc
mov byte [eax], 0xe9
mov dword [eax + 1], 4
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x539b1c
call esi
test eax, eax
je 0x100036dc
mov ecx, dword [ebp - 0xc]
mov edx, 0x539b1c
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x100036dc
push 5
push 0x539b1c
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x539a34
call esi
test eax, eax
je 0x1000370d
lea eax, [ebp - 8]
mov byte [0x539a34], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x539a34
call esi
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003787
mov ecx, 0x10005370
mov byte [eax], 0xe9
sub ecx, 0x428ff2
mov dword [eax + 1], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x428fed
call esi
test eax, eax
je 0x10003787
mov ecx, dword [ebp - 0xc]
mov edx, 0x428fed
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x10003787
push 5
push 0x428fed
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003805
mov ecx, 0x100053a0
mov word [eax], 0x8d0f
sub ecx, 0x428baf
mov dword [eax + 2], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x428ba9
call esi
test eax, eax
je 0x10003805
mov ecx, dword [ebp - 0xc]
mov edx, 0x428ba9
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x10003805
push 6
push 0x428ba9
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 9
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x1000388a
mov ecx, 0x100053f0
mov byte [eax], 0xe9
sub ecx, 0x40cd32
mov dword [eax + 1], ecx
mov dword [eax + 5], 0x90909090
lea eax, [ebp - 8]
push eax
push 0x40
push 9
push 0x40cd2d
call esi
test eax, eax
je 0x1000388a
mov eax, dword [ebp - 0xc]
mov ecx, 0x40cd2d
movq xmm0, qword [eax]
movq qword [ecx], xmm0
mov al, byte [eax + 8]
mov byte [ecx + 8], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 9
push ecx
call esi
test eax, eax
je 0x1000388a
push 9
push 0x40cd2d
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 9
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003908
mov byte [eax], 0xe9
mov dword [eax + 1], 0x15
mov dword [eax + 5], 0x90909090
lea eax, [ebp - 8]
push eax
push 0x40
push 9
push 0x40cd75
call esi
test eax, eax
je 0x10003908
mov eax, dword [ebp - 0xc]
mov ecx, 0x40cd75
movq xmm0, qword [eax]
movq qword [ecx], xmm0
mov al, byte [eax + 8]
mov byte [ecx + 8], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 9
push ecx
call esi
test eax, eax
je 0x10003908
push 9
push 0x40cd75
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 9
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x1000398d
mov ecx, 0x10005410
mov byte [eax], 0xe9
sub ecx, 0x420830
mov dword [eax + 1], ecx
mov dword [eax + 5], 0x90909090
lea eax, [ebp - 8]
push eax
push 0x40
push 9
push 0x42082b
call esi
test eax, eax
je 0x1000398d
mov eax, dword [ebp - 0xc]
mov ecx, 0x42082b
movq xmm0, qword [eax]
movq qword [ecx], xmm0
mov al, byte [eax + 8]
mov byte [ecx + 8], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 9
push ecx
call esi
test eax, eax
je 0x1000398d
push 9
push 0x42082b
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003a0d
mov ecx, 0x100053c0
mov byte [eax], 0xe9
sub ecx, 0x4211ab
mov dword [eax + 1], ecx
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x4211a6
call esi
test eax, eax
je 0x10003a0d
mov ecx, dword [ebp - 0xc]
mov edx, 0x4211a6
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x10003a0d
push 6
push 0x4211a6
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 4
push 0x60aa00
call esi
test eax, eax
je 0x10003a41
lea eax, [ebp - 8]
mov dword [0x60aa00], 0x1e
push eax
push dword [ebp - 8]
push 4
push 0x60aa00
call esi
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 4
push 0x60aa04
call esi
test eax, eax
je 0x10003a75
lea eax, [ebp - 8]
mov dword [0x60aa04], 0x1e
push eax
push dword [ebp - 8]
push 4
push 0x60aa04
call esi
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003ae8
mov byte [eax], 0xe9
mov dword [eax + 1], 5
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x4404de
call esi
test eax, eax
je 0x10003ae8
mov ecx, dword [ebp - 0xc]
mov edx, 0x4404de
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x10003ae8
push 5
push 0x4404de
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003b62
mov ecx, 0x10005340
mov byte [eax], 0xe9
sub ecx, 0x4df20d
mov dword [eax + 1], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x4df208
call esi
test eax, eax
je 0x10003b62
mov ecx, dword [ebp - 0xc]
mov edx, 0x4df208
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x10003b62
push 5
push 0x4df208
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003be2
mov ecx, 0x10005310
mov byte [eax], 0xe9
sub ecx, 0x4e0462
mov dword [eax + 1], ecx
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x4e045d
call esi
test eax, eax
je 0x10003be2
mov ecx, dword [ebp - 0xc]
mov edx, 0x4e045d
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x10003be2
push 6
push 0x4e045d
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 9
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003c67
mov ecx, 0x100052d0
mov byte [eax], 0xe9
sub ecx, 0x4ccbe1
mov dword [eax + 1], ecx
mov dword [eax + 5], 0x90909090
lea eax, [ebp - 8]
push eax
push 0x40
push 9
push 0x4ccbdc
call esi
test eax, eax
je 0x10003c67
mov eax, dword [ebp - 0xc]
mov ecx, 0x4ccbdc
movq xmm0, qword [eax]
movq qword [ecx], xmm0
mov al, byte [eax + 8]
mov byte [ecx + 8], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 9
push ecx
call esi
test eax, eax
je 0x10003c67
push 9
push 0x4ccbdc
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003ce1
mov ecx, 0x10005290
mov byte [eax], 0xe9
sub ecx, 0x46ed60
mov dword [eax + 1], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x46ed5b
call esi
test eax, eax
je 0x10003ce1
mov ecx, dword [ebp - 0xc]
mov edx, 0x46ed5b
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x10003ce1
push 5
push 0x46ed5b
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 9
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003d66
mov ecx, 0x10005250
mov byte [eax], 0xe9
sub ecx, 0x423f6e
mov dword [eax + 1], ecx
mov dword [eax + 5], 0x90909090
lea eax, [ebp - 8]
push eax
push 0x40
push 9
push 0x423f69
call esi
test eax, eax
je 0x10003d66
mov eax, dword [ebp - 0xc]
mov ecx, 0x423f69
movq xmm0, qword [eax]
movq qword [ecx], xmm0
mov al, byte [eax + 8]
mov byte [ecx + 8], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 9
push ecx
call esi
test eax, eax
je 0x10003d66
push 9
push 0x423f69
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003ddf
mov byte [eax], 0xe9
mov dword [eax + 1], 0x251
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x483a00
call esi
test eax, eax
je 0x10003ddf
mov ecx, dword [ebp - 0xc]
mov edx, 0x483a00
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x10003ddf
push 6
push 0x483a00
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 5
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003e59
mov ecx, 0x10005210
mov byte [eax], 0xe9
sub ecx, 0x54806d
mov dword [eax + 1], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 5
push 0x548068
call esi
test eax, eax
je 0x10003e59
mov ecx, dword [ebp - 0xc]
mov edx, 0x548068
mov eax, dword [ecx]
mov dword [edx], eax
mov al, byte [ecx + 4]
mov byte [edx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 5
push edx
call esi
test eax, eax
je 0x10003e59
push 5
push 0x548068
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003ed7
mov ecx, 0x10005230
mov word [eax], 0x840f
sub ecx, 0x49b3a0
mov dword [eax + 2], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x49b39a
call esi
test eax, eax
je 0x10003ed7
mov ecx, dword [ebp - 0xc]
mov edx, 0x49b39a
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x10003ed7
push 6
push 0x49b39a
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003f55
mov ecx, 0x10005230
mov word [eax], 0x840f
sub ecx, 0x49b3b0
mov dword [eax + 2], ecx
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x49b3aa
call esi
test eax, eax
je 0x10003f55
mov ecx, dword [ebp - 0xc]
mov edx, 0x49b3aa
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x10003f55
push 6
push 0x49b3aa
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
push 0x10009148
push 7
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x10003fe0
mov ecx, 0x10004170
mov byte [eax], 0xe9
sub ecx, 0x45a0c3
mov dword [eax + 1], ecx
mov ecx, 0x90909090
mov word [eax + 5], cx
lea eax, [ebp - 8]
push eax
push 0x40
push 7
push 0x45a0be
call esi
test eax, eax
je 0x10003fe0
mov ecx, dword [ebp - 0xc]
mov edx, 0x45a0be
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
mov al, byte [ecx + 6]
mov byte [edx + 6], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 7
push edx
call esi
test eax, eax
je 0x10003fe0
push 7
push 0x45a0be
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x455239
call esi
test eax, eax
je 0x10004011
lea eax, [ebp - 8]
mov byte [0x455239], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x455239
call esi
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x455360
call esi
test eax, eax
je 0x10004042
lea eax, [ebp - 8]
mov byte [0x455360], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x455360
call esi
push 0x10009148
push 6
mov dword [ebp - 8], 0
call fcn.10007529
add esp, 8
mov dword [ebp - 0xc], eax
test eax, eax
je 0x100040c2
mov ecx, 0x100040e0
mov byte [eax], 0xe9
sub ecx, 0x4bac64
mov dword [eax + 1], ecx
mov byte [eax + 5], 0x90
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push 0x4bac5f
call esi
test eax, eax
je 0x100040c2
mov ecx, dword [ebp - 0xc]
mov edx, 0x4bac5f
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push edx
call esi
test eax, eax
je 0x100040c2
push 6
push 0x4bac5f
call ebx
push eax
call edi
push dword [ebp - 0xc]
call fcn.10007524
add esp, 4
mov ecx, dword [ebp - 4]
mov al, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10007116
mov esp, ebp
pop ebp
ret