Function at 0x1003d2c0
Capabilities:
Manipulate console buffer

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x210
mov eax, dword [0x100cd008]
xor eax, esp
mov dword [esp + 0x20c], eax
movaps xmm0, xmmword [0x100c3b80]
lea edx, [esp + 0x28]
movsd xmm3, qword [0x100c3158]
movsd xmm2, qword [0x100c1428]
movsd xmm1, qword [0x100c1850]
push esi
push edi
sub esp, 0x40
mov byte [esp + 0x4b], 1
mov edi, ecx
lea ecx, [esp + 0x90]
movups xmmword [esp + 0x30], xmm0
movaps xmm0, xmmword [0x100c3e30]
movups xmmword [esp + 0x20], xmm0
movaps xmm0, xmmword [0x100c3930]
movups xmmword [esp + 0x10], xmm0
movaps xmm0, xmmword [0x100c4070]
movups xmmword [esp], xmm0
movsd xmm0, qword [0x100c2648]
call fcn.100271d0
mov esi, eax
add esp, 0x40
test esi, esi
js 0x1003d397
movsd xmm2, qword [0x100c1440]
lea eax, [esp + 0x18]
movsd xmm1, qword [0x100c1ea0]
lea edx, [esp + 0x50]
push eax
lea eax, [esp + 0x14]
mov ecx, 0x1007d560
push eax
call fcn.1005cec0
movsd xmm1, qword [esp + 0x20]
lea eax, [esp + 0x30]
movsd xmm0, qword [esp + 0x18]
lea edx, [esp + 0x28]
push eax
lea ecx, [esp + 0x5c]
call fcn.10059ce0
add esp, 0xc
movsd xmm6, qword [esp + 0x20]
xorps xmm0, xmm0
movsd xmm3, qword [0x100c1e78]
movaps xmm5, xmm6
movsd xmm2, qword [0x100c4130]
subsd xmm5, xmm3
movsd xmm4, qword [0x100c07d0]
ucomisd xmm5, xmm0
lahf
test ah, 0x44
jnp 0x1003d418
movaps xmm1, xmm5
movaps xmm0, xmm4
andps xmm1, xmm2
andps xmm0, xmm2
comisd xmm1, xmm0
jbe 0x1003d418
movaps xmm0, xmm3
mov dword [edi], 1
divsd xmm0, xmm5
sub esp, 0x18
andps xmm0, xmm2
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 8], xmm6
movsd qword [esp], xmm3
push str.R_rc
push str.eraAtoc13
push str._s_failed:__s_want__.20g_got__.20g__1__.3g__n
call fcn.100010e0
add esp, 0x24
jmp 0x1003d446
cmp dword [0x100ceab0], 0
je 0x1003d456
sub esp, 0x10
movsd qword [esp + 8], xmm6
movsd qword [esp], xmm3
push str.R_rc
push str.eraAtoc13
push str._s_passed:__s_want__.20g_got__.20g_n
call fcn.100010e0
add esp, 0x1c
movsd xmm4, qword [0x100c07d0]
movsd xmm2, qword [0x100c4130]
movsd xmm6, qword [esp + 0x28]
xorps xmm0, xmm0
movsd xmm3, qword [0x100c1490]
movaps xmm5, xmm6
subsd xmm5, xmm3
ucomisd xmm5, xmm0
lahf
test ah, 0x44
jnp 0x1003d4c7
movaps xmm1, xmm5
movaps xmm0, xmm4
andps xmm1, xmm2
andps xmm0, xmm2
comisd xmm1, xmm0
jbe 0x1003d4c7
movaps xmm0, xmm3
mov dword [edi], 1
divsd xmm0, xmm5
sub esp, 0x18
andps xmm0, xmm2
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 8], xmm6
movsd qword [esp], xmm3
push str.R_dc
push str.eraAtoc13
push str._s_failed:__s_want__.20g_got__.20g__1__.3g__n
call fcn.100010e0
add esp, 0x24
jmp 0x1003d4f5
cmp dword [0x100ceab0], 0
je 0x1003d4f5
sub esp, 0x10
movsd qword [esp + 8], xmm6
movsd qword [esp], xmm3
push str.R_dc
push str.eraAtoc13
push str._s_passed:__s_want__.20g_got__.20g_n
call fcn.100010e0
add esp, 0x1c
test esi, esi
je 0x1003d513
push esi
push 0
push 0x1007d834
push str.eraAtoc13
mov dword [edi], 1
push str._s_failed:__s_want__d_got__d_n
jmp 0x1003d52f
cmp dword [0x100ceab0], 0
je 0x1003d537
push 0
push 0
push 0x1007d834
push str.eraAtoc13
push str._s_passed:__s_want__d_got__d_n
call fcn.100010e0
add esp, 0x14
movaps xmm0, xmmword [0x100c3b80]
lea edx, [esp + 0x30]
movsd xmm3, qword [0x100c3158]
lea ecx, [esp + 0x50]
movsd xmm2, qword [0x100c1428]
sub esp, 0x40
movsd xmm1, qword [0x100c1850]
movups xmmword [esp + 0x30], xmm0
movaps xmm0, xmmword [0x100c3e30]
movups xmmword [esp + 0x20], xmm0
movaps xmm0, xmmword [0x100c3930]
movups xmmword [esp + 0x10], xmm0
movaps xmm0, xmmword [0x100c4070]
movups xmmword [esp], xmm0
movsd xmm0, qword [0x100c2648]
call fcn.100271d0
add esp, 0x40
mov dword [esp + 0xc], eax
test eax, eax
js 0x1003d5ea
movsd xmm2, qword [0x100c1440]
lea eax, [esp + 0x18]
movsd xmm1, qword [0x100c2f60]
lea edx, [esp + 0x50]
push eax
lea eax, [esp + 0x14]
mov ecx, 0x1007d580
push eax
call fcn.1005cec0
movsd xmm1, qword [esp + 0x20]
lea eax, [esp + 0x30]
movsd xmm0, qword [esp + 0x18]
lea edx, [esp + 0x28]
push eax
lea ecx, [esp + 0x5c]
call fcn.10059ce0
add esp, 0xc
push 0xfffffffffffffff5
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
movsd xmm5, qword [esp + 0x20]
xorps xmm0, xmm0
movsd xmm3, qword [0x100c1e78]
movaps xmm4, xmm5
subsd xmm4, xmm3
mov esi, eax
mov dword [esp + 0x10], esi
ucomisd xmm4, xmm0
lahf
test ah, 0x44
jnp 0x1003d676
movsd xmm2, qword [0x100c4130]
movaps xmm1, xmm4
movsd xmm0, qword [0x100c07d0]
andps xmm1, xmm2
andps xmm0, xmm2
comisd xmm1, xmm0
jbe 0x1003d676
movaps xmm0, xmm3
mov dword [edi], 1
divsd xmm0, xmm4
sub esp, 0x18
andps xmm0, xmm2
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm3
push str.H_rc
push str.eraAtoc13
push str._s_failed:__s_want__.20g_got__.20g__1__.3g__n
call fcn.100010e0
add esp, 0x24
jmp 0x1003d6a4
cmp dword [0x100ceab0], 0
je 0x1003d6a4
sub esp, 0x10
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm3
push str.H_rc
push str.eraAtoc13
push str._s_passed:__s_want__.20g_got__.20g_n
call fcn.100010e0
add esp, 0x1c
movsd xmm5, qword [esp + 0x28]
xorps xmm0, xmm0
movsd xmm3, qword [0x100c1490]
movaps xmm4, xmm5
subsd xmm4, xmm3
ucomisd xmm4, xmm0
lahf
test ah, 0x44
jnp 0x1003d722
movsd xmm2, qword [0x100c4130]
movaps xmm1, xmm4
movsd xmm0, qword [0x100c07d0]
andps xmm1, xmm2
andps xmm0, xmm2
comisd xmm1, xmm0
jbe 0x1003d722
movaps xmm0, xmm3
mov dword [edi], 1
divsd xmm0, xmm4
sub esp, 0x18
andps xmm0, xmm2
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm3
push str.H_dc
push str.eraAtoc13
push str._s_failed:__s_want__.20g_got__.20g__1__.3g__n
call fcn.100010e0
add esp, 0x24
jmp 0x1003d750
cmp dword [0x100ceab0], 0
je 0x1003d750
sub esp, 0x10
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm3
push str.H_dc
push str.eraAtoc13
push str._s_passed:__s_want__.20g_got__.20g_n
call fcn.100010e0
add esp, 0x1c
mov eax, dword [esp + 0xc]
test eax, eax
je 0x1003d772
push eax
push 0
push 0x1007d848
push str.eraAtoc13
mov dword [edi], 1
push str._s_failed:__s_want__d_got__d_n
jmp 0x1003d78e
cmp dword [0x100ceab0], 0
je 0x1003d796
push 0
push 0
push 0x1007d848
push str.eraAtoc13
push str._s_passed:__s_want__d_got__d_n
call fcn.100010e0
add esp, 0x14
movzx eax, byte [esp + 0xb]
lea edx, [esp + 0x48]
movaps xmm0, xmmword [0x100c3b80]
xor ecx, ecx
movsd xmm3, qword [0x100c3158]
cmp esi, 0xffffffff
movsd xmm2, qword [0x100c1428]
movsd xmm1, qword [0x100c1850]
cmove eax, ecx
sub esp, 0x40
mov dword [esp + 0x4c], eax
lea ecx, [esp + 0x90]
movups xmmword [esp + 0x30], xmm0
movaps xmm0, xmmword [0x100c3e30]
movups xmmword [esp + 0x20], xmm0
movaps xmm0, xmmword [0x100c3930]
movups xmmword [esp + 0x10], xmm0
movaps xmm0, xmmword [0x100c4070]
movups xmmword [esp], xmm0
movsd xmm0, qword [0x100c2648]
call fcn.100271d0
mov esi, eax
add esp, 0x40
mov dword [esp + 0x18], esi
test esi, esi
js 0x1003d85f
movsd xmm2, qword [0x100c1d18]
lea eax, [esp + 0x40]
movsd xmm1, qword [0x100c13e8]
lea edx, [esp + 0x50]
push eax
lea eax, [esp + 0x34]
mov ecx, 0x1007d594
push eax
call fcn.1005cec0
movsd xmm1, qword [esp + 0x48]
lea eax, [esp + 0x30]
movsd xmm0, qword [esp + 0x38]
lea edx, [esp + 0x28]
push eax
lea ecx, [esp + 0x5c]
call fcn.10059ce0
add esp, 0xc
movsd xmm5, qword [esp + 0x20]
xorps xmm0, xmm0
movsd xmm3, qword [0x100c1e78]
movaps xmm4, xmm5
subsd xmm4, xmm3
ucomisd xmm4, xmm0
lahf
test ah, 0x44
jnp 0x1003d8dd
movsd xmm2, qword [0x100c4130]
movaps xmm1, xmm4
movsd xmm0, qword [0x100c07d0]
andps xmm1, xmm2
andps xmm0, xmm2
comisd xmm1, xmm0
jbe 0x1003d8dd
movaps xmm0, xmm3
mov dword [edi], 1
divsd xmm0, xmm4
sub esp, 0x18
andps xmm0, xmm2
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm3
push str.A_rc
push str.eraAtoc13
push str._s_failed:__s_want__.20g_got__.20g__1__.3g__n
call fcn.100010e0
add esp, 0x24
jmp 0x1003d90b
cmp dword [0x100ceab0], 0
je 0x1003d90b
sub esp, 0x10
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm3
push str.A_rc
push str.eraAtoc13
push str._s_passed:__s_want__.20g_got__.20g_n
call fcn.100010e0
add esp, 0x1c
movsd xmm5, qword [esp + 0x28]
xorps xmm0, xmm0
movsd xmm2, qword [0x100c1490]
movaps xmm3, xmm5
subsd xmm3, xmm2
ucomisd xmm3, xmm0
lahf
test ah, 0x44
jnp 0x1003d989
movsd xmm1, qword [0x100c4130]
movaps xmm0, xmm3
movsd xmm4, qword [0x100c07d0]
andps xmm0, xmm1
andps xmm4, xmm1
comisd xmm0, xmm4
jbe 0x1003d989
movaps xmm0, xmm2
mov dword [edi], 1
divsd xmm0, xmm3
sub esp, 0x18
andps xmm0, xmm1
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm2
push str.A_dc
push str.eraAtoc13
push str._s_failed:__s_want__.20g_got__.20g__1__.3g__n
call fcn.100010e0
add esp, 0x24
jmp 0x1003d9b7
cmp dword [0x100ceab0], 0
je 0x1003d9b7
sub esp, 0x10
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm2
push str.A_dc
push str.eraAtoc13
push str._s_passed:__s_want__.20g_got__.20g_n
call fcn.100010e0
add esp, 0x1c
cmp byte [esp + 0xc], 0
je 0x1003da08
lea eax, [esp + 0x38]
mov dword [esp + 0xc], 0x20050
mov esi, dword [esp + 0xc]
push eax
push esi
push 0xc8
lea eax, [esp + 0x154]
push eax
push dword [esp + 0x20]
call dword [sym.imp.KERNEL32.dll_ReadConsoleOutputCharacterW]
lea eax, [esp + 0x3c]
push eax
push esi
push 0xc8
lea eax, [esp + 0x154]
push eax
push dword [esp + 0x20]
call dword [sym.imp.KERNEL32.dll_WriteConsoleOutputCharacterW]
mov esi, dword [esp + 0x18]
test esi, esi
je 0x1003da26
push esi
push 0
push 0x1007d85c
push str.eraAtoc13
mov dword [edi], 1
push str._s_failed:__s_want__d_got__d_n
jmp 0x1003da42
cmp dword [0x100ceab0], 0
je 0x1003da4a
push 0
push 0
push 0x1007d85c
push str.eraAtoc13
push str._s_passed:__s_want__d_got__d_n
call fcn.100010e0
add esp, 0x14
mov ecx, dword [esp + 0x214]
pop edi
pop esi
xor ecx, esp
call fcn.10062dbb
mov esp, ebp
pop ebp
ret