Function at 0x623611
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x108
mov eax, dword [reloc.MSVCRT.dll_strncpy]
xor eax, esp
mov dword [esp + reloc.MSVCRT.dll_strncpy], eax
push esi
push edi
mov dword [esp + 0x14], edx
mov esi, ecx
mov eax, dword [ebp + 8]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0x28]
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x40]
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 0x44]
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x5c]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x60]
mov dword [esp + 0x5c], eax
mov eax, dword [ebp + 0x64]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x68]
mov dword [esp + 0x54], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x50], eax
mov eax, dword [esi + 0x74]
mov dword [esp + 0x88], eax
mov eax, dword [esi + 0x78]
mov edi, dword [ebp + 0x10]
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x88]
push eax
push dword [esi + 0x28]
call dword [0x100c4310]
mov eax, dword [esp + 0x88]
xorps xmm0, xmm0
push edi
push dword [esp + 0x1c]
mov dword [esp + 0x48], eax
push dword [esp + 0x24]
mov eax, dword [esp + 0x98]
push dword [esp + 0x20]
mov dword [esp + 0x4c], eax
mov eax, dword [esi + 0x44]
push 0x3f6
push esi
movaps xmmword [esp + 0xf8], xmm0
movq qword [esp + 0x108], xmm0
call eax
mov ecx, eax
mov eax, dword [esi + 0xdc]
mov dword [esp + 0x34], ecx
test ecx, ecx
je 0x6237af
mov eax, dword [esp + 0x14]
sub eax, 0
je 0x623772
sub eax, 1
mov eax, dword [esi + 0xdc]
je 0x62376d
mov eax, dword [eax + 0x2c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + edx*4]
jmp 0x62377b
mov eax, dword [eax + 0x14]
jmp 0x62377b
mov eax, dword [esi + 0xdc]
mov eax, dword [eax + 4]
mov dword [esp + 0x28], eax
lea eax, [ecx + 8]
mov edx, dword [esp + 0x28]
push eax
push dword [edx + edi*4]
mov edx, dword [esp + 0x1c]
push dword [ecx + 0x14]
push dword [ecx + 0x10]
push dword [ecx + 0xc]
mov ecx, esi
push dword [eax]
push edi
push dword [esp + 0x34]
push dword [esp + 0x3c]
call fcn.005f96c1
mov ecx, dword [esp + 0x34]
jmp 0x6237f1
mov eax, dword [eax + 4]
test eax, eax
je 0x6237f1
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0xe0]
mov dword [esp + 0x34], ecx
lea ecx, [esp + 0xe8]
push ecx
push dword [eax + edi*4]
mov ecx, esi
push dword [esi + 0x54]
push dword [esi + 0x50]
push 0
push 0
push edi
push dword [esp + 0x34]
push dword [esp + 0x3c]
call fcn.005f96c1
lea ecx, [esp + 0xe0]
cmp dword [reloc.MSVCRT.dll_strncpy], 0
movd xmm0, dword [esp + 0x40]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ecx + 8]
cvttss2si eax, xmm0
movd xmm0, dword [esp + 0x3c]
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x28], eax
addss xmm0, dword [ecx + 0xc]
cvttss2si edx, xmm0
mov dword [esp + 0x40], edx
cvttss2si edx, dword [ecx + 0x10]
cvttss2si ecx, dword [ecx + 0x14]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x44], ecx
je 0x6238dc
push dword [esp + 0x50]
mov edx, dword [esp + 0x24]
push 0xff
push dword [esp + 0x5c]
push dword [esp + 0x64]
push dword [esp + 0x6c]
push dword [esp + 0x74]
push dword [esp + 0x7c]
push 0x10
push 1
push dword [esp + 0x70]
push dword [esp + 0x90]
push dword [esp + 0x98]
push dword [esp + 0xa0]
push dword [esp + 0xa8]
push dword [esp + 0xb0]
push dword [esp + 0xb8]
push dword [esp + 0xc0]
push dword [esp + 0xc8]
push 0
push dword [esp + 0x94]
push dword [esp + 0x7c]
call fcn.005f6521
push 0x90
push dword [esp + 0x48]
push dword [esp + 0x44]
push dword [esp + 0x4c]
push dword [esp + 0x38]
push 0xffffffffffffffff
push dword [0x100e2340]
call dword [0x100c4280]
mov eax, dword [reloc.MSVCRT.dll_strncpy]
jmp 0x623aaf
cmp dword [reloc.MSVCRT.dll_strncpy], 0
jne 0x623995
push 0
call dword [0x100c41ac]
push 0x100cb360
push eax
mov dword [reloc.MSVCRT.dll_strncpy], eax
mov dword [esp + 0xc0], 3
mov dword [esp + 0xc4], 0x10062460
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xd0], eax
call dword [0x100c4258]
push 0x7f00
push 0
mov dword [esp + 0xd4], eax
call dword [0x100c42bc]
mov dword [esp + 0xd0], eax
lea eax, [esp + 0xb8]
push eax
mov dword [esp + 0xd8], 5
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0x100cc414
call dword [0x100c4250]
test ax, ax
jne 0x62398d
mov ecx, dword [esp + 0x48]
call fcn.00645cc1
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x28]
push 0
push dword [0x100e5880]
push 0
push 0
push ecx
push dword [esp + 0x50]
push dword [esp + 0x58]
push eax
push 0x80400000
push 0x100cc414
push 0x100cc414
push 0x88
call dword [0x100c424c]
push 1
push 0x100cb310
push eax
mov dword [reloc.MSVCRT.dll_strncpy], eax
call dword [0x100c41f0]
push 0x93
push dword [esp + 0x48]
push dword [esp + 0x44]
push dword [esp + 0x4c]
push dword [esp + 0x38]
push 0xffffffffffffffff
push dword [0x100e2340]
call dword [0x100c4280]
push 0
push 0
push dword [esp + 0x58]
cmp dword [esp + 0x58], 0
push 0xff
push dword [esp + 0x64]
setne al
push dword [esp + 0x6c]
movzx eax, al
push dword [esp + 0x74]
push dword [esp + 0x7c]
push dword [esp + 0x84]
push 0x10
push 1
push eax
push 0
push 0
push dword [esp + 0xa0]
push dword [esp + 0xa8]
push dword [esp + 0xb0]
push dword [esp + 0xb8]
push dword [esp + 0xc0]
push dword [esp + 0xc8]
push dword [esp + 0xd0]
push dword [esp + 0xd8]
push 0
push dword [esp + 0xa4]
push dword [esp + 0x8c]
push 0
push dword [esp + 0x88]
push 0
push 0
push 0xff
push 0
push 1
push 0
push 0
push 0
push 0
push 0
push 0
push dword [0x100e2340]
push 0
call fcn.005f49c1
mov dword [reloc.MSVCRT.dll_strncpy], eax
push eax
call fcn.005e5161
push 0x53
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push dword [0x100e2340]
call dword [0x100c4280]
cmp dword [esi + 0x2c], 0
xorps xmm0, xmm0
movaps xmmword [esp + 0x90], xmm0
movq qword [esp + 0xa0], xmm0
mov dword [esp + 0xa8], 0
jle 0x623f66
mov eax, dword [esp + 0x24]
mov eax, dword [eax + edi*4]
cmp dword [eax + 0xc], 0
je 0x623f2c
cmp dword [reloc.MSVCRT.dll_strncpy], 0
je 0x623f2c
push 0
push 0
push 0
lea eax, [esp + 0x9c]
push eax
call dword [0x100c4244]
test eax, eax
je 0x623d24
mov eax, dword [esp + 0x94]
cmp eax, 0x12
je 0x623e40
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x623b77
cmp eax, 0x20a
jne 0x623b77
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x98]
mov edx, dword [reloc.MSVCRT.dll_strncpy]
push ecx
push eax
push ecx
push eax
mov eax, dword [edx + 0x44]
push 0x29e
push edx
call eax
jmp 0x623d3b
cmp eax, 0x201
je 0x623ce2
cmp eax, 0x204
je 0x623ce2
cmp eax, 0xa1
je 0x623ce2
cmp eax, 0xa4
je 0x623ce2
cmp eax, 0x7b
je 0x623ce2
test ecx, ecx
jne 0x623cf1
cmp eax, 0x100
jne 0x623bdf
cmp dword [esp + 0x98], 0xd
jne 0x623cf1
push 0x93
push ecx
push ecx
push ecx
push ecx
push 0xffffffffffffffff
push dword [0x100e2340]
jmp 0x623d5a
cmp eax, 0x20a
jne 0x623cf1
mov eax, dword [esp + 0x24]
push 0x93
push 0
push 0
mov eax, dword [eax + edi*4]
push 0
push 0
push 0xffffffffffffffff
push dword [0x100e2340]
mov dword [eax + 0xc], 0
call dword [0x100c4280]
mov eax, dword [reloc.MSVCRT.dll_strncpy]
lea ecx, [esp + 0x2c]
push ecx
push eax
push 0x8077
push dword [eax + 0x28]
mov dword [esp + 0x3c], 9
mov dword [esp + 0x40], 0
call dword [0x100c4300]
mov ecx, eax
mov eax, dword [esp + 0x38]
push ecx
push 0
push 0
mov eax, dword [eax + edi*4]
push edi
push dword [esp + 0x28]
mov dword [esp + 0x34], ecx
push dword [esp + 0x30]
mov eax, dword [eax + 4]
push dword [esp + 0x2c]
push 0x10016
push esi
call eax
test eax, eax
jne 0x623c7d
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov ecx, dword [eax + edi*4]
add ecx, 4
call fcn.00645ba1
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x623caf
mov ecx, dword [esp + 0x34]
cvttss2si eax, dword [ecx + 0x14]
push eax
cvttss2si eax, dword [ecx + 0x10]
push eax
cvttss2si eax, dword [ecx + 0xc]
push eax
cvttss2si eax, dword [ecx + 8]
push eax
push esi
call fcn.005e4921
push esi
call fcn.005e4a11
jmp 0x623cc4
push eax
mov eax, dword [esi + 0x44]
push edi
push dword [esp + 0x20]
push dword [esp + 0x28]
push 0x3f8
push esi
call eax
lea eax, [esp + 0x90]
push eax
call dword [0x100c42b8]
lea eax, [esp + 0x90]
push eax
call dword [0x100c429c]
jmp 0x623cf1
mov ecx, dword [reloc.MSVCRT.dll_strncpy]
cmp ecx, dword [esp + 0x90]
jne 0x623d4a
call dword [0x100c4254]
cmp eax, dword [esi + 0x28]
je 0x623d06
mov ecx, dword [reloc.MSVCRT.dll_strncpy]
cmp eax, ecx
jne 0x623d4a
lea eax, [esp + 0x90]
push eax
call dword [0x100c42b8]
lea eax, [esp + 0x90]
push eax
call dword [0x100c429c]
jmp 0x623d3b
call dword [0x100c4254]
cmp eax, dword [esi + 0x28]
je 0x623d3b
cmp eax, dword [reloc.MSVCRT.dll_strncpy]
jne 0x623e52
cmp dword [esi + 0x2c], 0
jg 0x623af6
jmp 0x623f2c
push 0x93
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push ecx
mov eax, dword [esp + 0x40]
mov eax, dword [eax + edi*4]
mov dword [eax + 0xc], 0
call dword [0x100c4280]
mov eax, dword [reloc.MSVCRT.dll_strncpy]
lea ecx, [esp + 0x2c]
push ecx
push eax
push 0x8077
push dword [eax + 0x28]
mov dword [esp + 0x3c], 9
mov dword [esp + 0x40], 0
call dword [0x100c4300]
mov ecx, eax
mov eax, dword [esp + 0x38]
push ecx
push 0
push 0
mov eax, dword [eax + edi*4]
push edi
push dword [esp + 0x28]
mov dword [esp + 0x34], ecx
push dword [esp + 0x30]
mov eax, dword [eax + 4]
push dword [esp + 0x2c]
push 0x10016
push esi
call eax
test eax, eax
jne 0x623dd8
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov ecx, dword [eax + edi*4]
add ecx, 4
call fcn.00645ba1
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x623e0a
mov ecx, dword [esp + 0x34]
cvttss2si eax, dword [ecx + 0x14]
push eax
cvttss2si eax, dword [ecx + 0x10]
push eax
cvttss2si eax, dword [ecx + 0xc]
push eax
cvttss2si eax, dword [ecx + 8]
push eax
push esi
call fcn.005e4921
push esi
call fcn.005e4a11
jmp 0x623e1f
push eax
mov eax, dword [esi + 0x44]
push edi
push dword [esp + 0x20]
push dword [esp + 0x28]
push 0x3f8
push esi
call eax
lea eax, [esp + 0x90]
push eax
call dword [0x100c42b8]
lea eax, [esp + 0x90]
push eax
call dword [0x100c429c]
jmp 0x623f2c
push dword [esp + 0x98]
call dword [0x100c425c]
jmp 0x623f2c
mov eax, dword [esp + 0x24]
push 0x93
push 0
push 0
mov eax, dword [eax + edi*4]
push 0
push 0
push 0xffffffffffffffff
push dword [0x100e2340]
mov dword [eax + 0xc], 0
call dword [0x100c4280]
mov eax, dword [reloc.MSVCRT.dll_strncpy]
lea ecx, [esp + 0x2c]
push ecx
push eax
push 0x8077
push dword [eax + 0x28]
mov dword [esp + 0x3c], 9
mov dword [esp + 0x40], 0
call dword [0x100c4300]
mov ecx, eax
mov eax, dword [esp + 0x38]
push ecx
push 0
push 0
mov eax, dword [eax + edi*4]
push edi
push dword [esp + 0x28]
mov dword [esp + 0x34], ecx
push dword [esp + 0x30]
mov eax, dword [eax + 4]
push dword [esp + 0x2c]
push 0x10016
push esi
call eax
test eax, eax
jne 0x623ee5
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov ecx, dword [eax + edi*4]
add ecx, 4
call fcn.00645ba1
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x623f17
mov ecx, dword [esp + 0x34]
cvttss2si eax, dword [ecx + 0x14]
push eax
cvttss2si eax, dword [ecx + 0x10]
push eax
cvttss2si eax, dword [ecx + 0xc]
push eax
cvttss2si eax, dword [ecx + 8]
push eax
push esi
call fcn.005e4921
push esi
call fcn.005e4a11
jmp 0x623f2c
push eax
mov eax, dword [esi + 0x44]
push edi
push dword [esp + 0x20]
push dword [esp + 0x28]
push 0x3f8
push esi
call eax
cmp dword [esi + 0x2c], 0
jle 0x623f66
mov eax, dword [reloc.MSVCRT.dll_strncpy]
test eax, eax
je 0x623f66
push 0x93
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push eax
call dword [0x100c4280]
mov eax, dword [reloc.MSVCRT.dll_strncpy]
push 0
mov eax, dword [eax + reloc.MSVCRT.dll_strncpy]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax + 0x38]
mov ecx, dword [esp + reloc.MSVCRT.dll_strncpy]
pop edi
pop esi
xor ecx, esp
call fcn.00667949
mov esp, ebp
pop ebp
ret 0x6c