Function at 0x42d360
Capabilities:
Print debug messages

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c7c41
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x5d0
mov eax, dword [0x4fc00c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x5a4], esi
mov edi, dword [ebx + 0x14]
push 0x4efaf4
mov dword [ebp - 0x5b8], edi
call fcn.00446f30
movaps xmm0, xmmword [0x4f4310]
mov ecx, esi
mov dword [esi + 8], eax
lea eax, [ebp - 0x12c]
push eax
push 1
lea eax, [ebp - 0x13c]
mov word [esi + 0x2d8], 0x101
push eax
push 2
mov dword [esi + 0x2b8], 0x20
mov dword [esi + 0x2bc], 0
mov dword [esi + 0x298], 1
push dword [0x4fe45c]
movups xmmword [ebp - 0x13c], xmm0
mov dword [ebp - 0x12c], 7
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 2
call fcn.00446fa0
test al, al
jne 0x42d44f
push str.clsFx12TetraCircle_CreateRootSignature_Failed_n
push 0x200
push edi
call fcn.00483128
add esp, 0xc
xor al, al
jmp 0x42dae6
xorps xmm0, xmm0
xor eax, eax
movlpd qword [ebp - 0x144], xmm0
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x140], eax
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x144]
movaps xmm0, xmmword [0x4f41f0]
sub esp, 0x28
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x5cc], eax
mov dword [ebp - 0x5c4], eax
mov dword [ebp - 0x5c8], eax
mov eax, esp
mov dword [ebp - 0x5c0], 0xffffffff
mov dword [ebp - 0x5bc], 0xffffffff
push 0
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0x5d0]
movups xmmword [eax + 0x10], xmm0
movq xmm0, qword [ebp - 0x5c0]
movq qword [eax + 0x20], xmm0
call fcn.0042db50
movaps xmm0, xmmword [0x4f41f0]
lea ecx, [ebp - 0x144]
sub esp, 0x28
mov dword [ebp - 0x5d0], 0
mov eax, esp
mov dword [ebp - 0x5cc], 0
mov dword [ebp - 0x5c4], 1
mov dword [ebp - 0x5c8], 0
mov dword [ebp - 0x5c0], 0xffffffff
movups xmmword [eax], xmm0
mov dword [ebp - 0x5bc], 0xffffffff
movups xmm0, xmmword [ebp - 0x5d0]
push 1
movups xmmword [eax + 0x10], xmm0
movq xmm0, qword [ebp - 0x5c0]
movq qword [eax + 0x20], xmm0
call fcn.0042db50
mov byte [ebp - 0x12c], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0
mov byte [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0
mov byte [ebp - 0x5b0], 0
mov dword [ebp - 0x5ac], 0
mov dword [ebp - 0x5a8], 0
push edi
push 1
push str.Shader_Fx12TetraCircle
push 0
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 3
call fcn.00447610
test al, al
je 0x42daa5
push edi
push 1
push str.Shader_Fx12TetraCircle
push 1
lea ecx, [ebp - 0x138]
call fcn.00447610
test al, al
je 0x42daa5
lea ecx, [ebp - 0x5b0]
call fcn.004478d0
mov esi, dword [sym.imp.KERNEL32.dll_VirtualAlloc]
push 4
push 0x3000
push 8
push 0
mov byte [ebp - 0x5b0], 2
call esi
mov dword [ebp - 0x5ac], eax
test eax, eax
jne 0x42d615
push str.alloc_failed
push 0x200
push edi
call fcn.00483128
add esp, 0xc
jmp 0x42daa5
push 4
push 0x3000
push 8
push 0
call esi
mov ecx, dword [ebp - 0x5ac]
mov edx, eax
xor eax, eax
mov dword [ebp - 0x5a8], edx
sub ecx, edx
mov dword [ebp - 0x590], eax
mov esi, edx
mov dword [ebp - 0x594], ecx
push eax
push str.Shader_Fx12TetraCircle
lea eax, [ebp - 0x120]
push str._sPs_02d
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
push 0x200
lea eax, [ebp - 0x348]
push 0
push eax
call fcn.0047ebc0
add esp, 0x1c
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x348]
push 0x200
push eax
call fcn.00483128
add esp, 8
lea ecx, [ebp - 0x348]
call fcn.0044d1d0
push 0x4f0edc
lea eax, [ebp - 0x348]
push 0x200
push eax
call fcn.00484a35
add esp, 0xc
lea eax, [ebp - 0x348]
push 0x4f0ee8
push 0x200
push eax
call fcn.00484a35
add esp, 0xc
lea eax, [ebp - 0x348]
push esi
push eax
push 0x502514
call fcn.004523e0
mov ecx, eax
call fcn.004526f0
mov edi, eax
test edi, edi
jne 0x42d6fe
mov edx, esi
lea ecx, [ebp - 0x348]
call fcn.0044eb80
mov edi, eax
test edi, edi
je 0x42da59
mov eax, dword [ebp - 0x594]
mov dword [eax + esi], edi
add esi, 4
mov eax, dword [ebp - 0x590]
inc eax
mov dword [ebp - 0x590], eax
cmp eax, 2
jl 0x42d642
movzx edi, word [ebp - 0x13e]
xor esi, esi
mov dword [ebp - 0x594], esi
test edi, edi
je 0x42d9cc
nop word [eax + eax]
mov edx, dword [ebp - 0x144]
xor eax, eax
mov ecx, edx
nop word [eax + eax]
cmp dword [ecx], esi
je 0x42d760
inc eax
add ecx, 0x2c
cmp eax, edi
jl 0x42d750
xor esi, esi
jmp 0x42d768
imul eax, eax, 0x2c
lea esi, [edx + 4]
add esi, eax
mov edx, dword [ebp - 0x128]
mov cl, byte [esi + 0x14]
mov al, byte [ebp - 0x12c]
test edx, edx
je 0x42d793
cmp cl, al
jae 0x42d793
movzx eax, cl
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x598], eax
mov al, byte [ebp - 0x12c]
jmp 0x42d79d
mov dword [ebp - 0x598], 0
mov edx, dword [ebp - 0x124]
test edx, edx
je 0x42d7b9
cmp cl, al
jae 0x42d7b9
movzx eax, cl
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x59c], eax
jmp 0x42d7c3
mov dword [ebp - 0x59c], 0
mov edx, dword [ebp - 0x134]
mov cl, byte [esi + 0x18]
mov al, byte [ebp - 0x138]
test edx, edx
je 0x42d7ee
cmp cl, al
jae 0x42d7ee
movzx eax, cl
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x5a0], eax
mov al, byte [ebp - 0x138]
jmp 0x42d7f8
mov dword [ebp - 0x5a0], 0
mov edx, dword [ebp - 0x130]
test edx, edx
je 0x42d814
cmp cl, al
jae 0x42d814
movzx eax, cl
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x590], eax
jmp 0x42d81e
mov dword [ebp - 0x590], 0
mov cl, byte [esi + 0x1c]
cmp cl, 2
jae 0x42d83a
mov edx, dword [ebp - 0x5ac]
movzx eax, cl
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x5b4], eax
jmp 0x42d844
mov dword [ebp - 0x5b4], 0
mov edx, dword [ebp - 0x5a8]
test edx, edx
je 0x42d85b
cmp cl, 2
jae 0x42d85b
movzx eax, cl
mov edi, dword [edx + eax*4]
jmp 0x42d85d
xor edi, edi
push 0x23c
lea eax, [ebp - 0x588]
push 0
push eax
call fcn.0047ebc0
mov eax, dword [ebp - 0x5a4]
add esp, 0xc
mov dword [ebp - 0x390], 1
mov dword [ebp - 0x364], 1
mov dword [ebp - 0x360], 0
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x588], eax
mov eax, dword [ebp - 0x598]
mov dword [ebp - 0x584], eax
mov eax, dword [ebp - 0x59c]
mov dword [ebp - 0x580], eax
mov eax, dword [ebp - 0x5b4]
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x5a0]
mov dword [ebp - 0x564], eax
mov eax, dword [ebp - 0x590]
mov dword [ebp - 0x560], eax
lea eax, [ebp - 0x588]
mov dword [ebp - 0x400], 0xffffffff
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x544], 0
mov dword [ebp - 0x578], edi
mov dword [ebp - 0x56c], 0
mov dword [ebp - 0x568], 0
mov dword [ebp - 0x574], 0
mov dword [ebp - 0x570], 0
push dword [esi]
push eax
call fcn.00447210
push ecx
push dword [esi + 0x10]
lea eax, [ebp - 0x588]
push eax
call fcn.00447350
mov dword [ebp - 0x38c], 1
lea eax, [ebp - 0x588]
mov dword [ebp - 0x388], 0x1c
push dword [esi + 4]
push ecx
push eax
call fcn.004473e0
cmp dword [esi + 0xc], 0
push ecx
setne al
movzx eax, al
push eax
xor eax, eax
cmp dword [esi + 8], eax
setne al
push eax
lea eax, [ebp - 0x588]
push eax
call fcn.00447560
mov esi, dword [ebp - 0x594]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [0x4fe45c]
lea eax, [eax + esi*4]
mov edx, dword [ecx]
add eax, 0x14
push eax
push 0x4efae4
lea eax, [ebp - 0x588]
push eax
push ecx
call dword [edx + 0x28]
movzx edi, word [ebp - 0x13e]
inc esi
mov dword [ebp - 0x594], esi
cmp esi, edi
jl 0x42d740
lea ecx, [ebp - 0x12c]
call fcn.004478d0
lea ecx, [ebp - 0x138]
call fcn.004478d0
lea ecx, [ebp - 0x5b0]
call fcn.004478d0
mov esi, dword [ebp - 0x144]
test esi, esi
je 0x42da08
push esi
call fcn.0047d79d
add esp, 4
xor esi, esi
mov dword [ebp - 0x144], esi
xor eax, eax
push 8
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x5a4]
push 2
push eax
push ecx
lea ecx, [eax + 0x3a0]
call fcn.00442400
test al, al
jne 0x42da45
push str.clsFx12TetraCircle_Renderer_Init_Failed_n
push 0x200
push dword [ebp - 0x5b8]
call fcn.00483128
add esp, 0xc
jmp 0x42daab
push str._t_clsFx12TetraCircle_Renderer_Init__n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [ebp - 0x589], 1
jmp 0x42dab2
lea eax, [ebp - 0x348]
push eax
push 0x502514
lea eax, [ebp - 0x550]
push 0x4f0eec
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [ebp - 0x550]
call fcn.0044cef0
mov eax, dword [ebp - 0x594]
mov dword [eax + esi], edi
lea eax, [ebp - 0x120]
push eax
push str.ShaderFile:_s_load_failed
push dword [ebp - 0x5b8]
call fcn.0044d1b0
add esp, 0x1c
mov esi, dword [ebp - 0x144]
mov byte [ebp - 0x589], 0
lea ecx, [ebp - 0x5b0]
call fcn.004478d0
lea ecx, [ebp - 0x138]
call fcn.004478d0
lea ecx, [ebp - 0x12c]
call fcn.004478d0
test esi, esi
je 0x42dae0
push esi
call fcn.0047d79d
add esp, 4
mov al, byte [ebp - 0x589]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0047d312
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10