Function at 0x417c80
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x548e07
mov eax, dword fs:[0]
push eax
sub esp, 0x268
mov eax, dword [0x57a040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
test ebx, ebx
je 0x4190a3
mov ecx, 0x556a78
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x417ce0
test dl, dl
je 0x417cdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x417ce0
add eax, 2
add ecx, 2
test dl, dl
jne 0x417cc0
xor eax, eax
jmp 0x417ce5
sbb eax, eax
or eax, 1
test eax, eax
je 0x4190a3
mov eax, dword [0x5d8fa4]
cmp eax, 1
je 0x417d27
push eax
push str._CastleSiege__CCastleSiege::LoadData_____m_iCastleDataLoadState___CASTLESIEGE_DATALOAD_1___d_
push 1
call fcn.005262e0
add esp, 0xc
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00529f01
mov esp, ebp
pop ebp
ret 4
push 0x318
call fcn.00529f0f
mov edi, eax
add esp, 4
mov dword [ebp - 0x164], edi
push pe_nt_image_headers32
lea esi, [edi + 0xc]
mov dword [edi], vtable.CMemScript.0
push 0
push esi
mov dword [edi + 4], 0
mov dword [edi + 8], 0
call fcn.0052bd20
add esp, 0xc
lea eax, [edi + 0x218]
push esi
push str.__s__The_file_were_not_configured_correctly
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov ecx, edi
push ebx
call fcn.004b93f0
test al, al
je 0x4190ad
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x150], ebx
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 4], ebx
xor esi, esi
mov dword [ebp - 0x148], esi
mov dword [ebp - 0x160], esi
mov dword [ebp - 0x15c], esi
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x158], eax
mov byte [ebp - 4], 1
push 0x18
mov dword [ebp - 0x11c], esi
mov dword [ebp - 0x118], esi
call fcn.00529f0f
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp - 0x11c], eax
mov ecx, edi
mov byte [ebp - 4], 2
mov dword [ebp - 0x168], esi
mov dword [ebp - 0x16c], esi
mov dword [ebp - 0x170], esi
mov dword [ebp - 0x174], esi
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x194], esi
mov dword [ebp - 0x17c], esi
call fcn.004b94f0
cmp eax, 2
je 0x418abd
nop word [eax + eax]
lea eax, [ebx + ebx*2]
lea eax, [eax*4 + 0x5d8f44]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
cvttss2si ecx, dword [edi + 0x110]
lea eax, [eax + eax*2]
lea eax, [eax*4 + 0x5d8f20]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x124], ecx
lea eax, [eax + eax*2]
lea eax, [eax*4 + 0x5d8efc]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x16c]
lea eax, [eax + eax*2]
lea eax, [eax*4 + 0x5d8ed8]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x168]
lea eax, [eax + eax*2]
lea eax, [eax*4 + 0x5d8eb4]
mov dword [ebp - 0x184], eax
test ecx, ecx
jne 0x417f1a
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x417ef0
test dl, dl
je 0x417eec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x417ef0
add eax, 2
add ecx, 2
test dl, dl
jne 0x417ed0
xor eax, eax
jmp 0x417ef5
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si eax, dword [edi + 0x110]
test eax, eax
jle 0x418b39
mov ecx, dword [ebp - 0x124]
mov dword [0x5d8fac], eax
jmp 0x417eb6
cmp ecx, 1
jne 0x41825e
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x417f55
test dl, dl
je 0x417f51
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x417f55
add eax, 2
add ecx, 2
test dl, dl
jne 0x417f35
xor eax, eax
jmp 0x417f5a
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si ebx, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x128], ebx
call fcn.004b94f0
cvttss2si esi, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x13c], esi
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x144], eax
call fcn.004b94f0
cvttss2si ecx, dword [edi + 0x110]
mov edx, dword [ebp - 0x150]
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x140], ecx
cmp eax, edx
je 0x418198
mov ecx, dword [ebp - 0x150]
lea edx, [eax + 8]
nop dword [eax]
cmp dword [edx - 4], 0
mov ebx, dword [edx]
mov esi, dword [edx + 4]
je 0x418172
mov eax, dword [ebp - 0x128]
cmp ebx, eax
je 0x418c67
mov eax, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x144]
lea eax, [eax + eax*2]
lea ecx, [ecx + eax*8]
mov eax, ecx
shl eax, 4
sub eax, ecx
mov ecx, dword [ebp - 0x140]
lea eax, [ecx + eax*4]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x138], eax
lea eax, [esi + esi*2]
lea ecx, [ecx + eax*8]
mov eax, ecx
shl eax, 4
sub eax, ecx
mov ecx, dword [edx + 0xc]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0x138]
cmp ebx, dword [ebp - 0x128]
jle 0x418164
cmp eax, ecx
jg 0x41816c
push ecx
push str._CastleSiege__CCastleSiege::LoadData_____Date_Order_is_wrong_:__d
push 1
call fcn.005262e0
mov eax, dword [ebp - 0x11c]
add esp, 0xc
push dword [eax + 4]
lea eax, [ebp - 0x11c]
push eax
mov ecx, eax
call fcn.00422a80
push 0x18
push dword [ebp - 0x11c]
call fcn.00529f3f
mov edi, dword [ebp - 0x160]
add esp, 8
test edi, edi
je 0x4180e7
mov ebx, dword [ebp - 0x15c]
mov esi, edi
cmp esi, ebx
je 0x4180a1
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax]
add esi, 0x74
cmp esi, ebx
jne 0x418092
mov ecx, dword [ebp - 0x130]
mov eax, 0x8d3dcb09
sub ecx, edi
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, eax, 0x74
mov eax, edi
cmp ecx, 0x1000
jb 0x4180dd
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4190ba
push ecx
push edi
call fcn.00529f3f
add esp, 8
mov edi, dword [ebp - 0x12c]
test edi, edi
je 0x417d07
mov ebx, dword [ebp - 0x150]
mov esi, edi
cmp esi, ebx
je 0x418110
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax]
add esi, 0x1c
cmp esi, ebx
jne 0x418101
mov ecx, dword [ebp - 0x134]
mov eax, 0x92492493
sub ecx, edi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, edi
shl ecx, 2
cmp ecx, 0x1000
jb 0x418155
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4190ba
push ecx
push edi
call fcn.00529f3f
add esp, 8
jmp 0x417d07
cmp eax, ecx
jge 0x418b8b
mov ecx, dword [ebp - 0x150]
add edx, 0x1c
lea eax, [edx - 8]
cmp eax, ecx
jne 0x417fd0
mov ebx, dword [ebp - 0x128]
mov esi, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x140]
mov edx, dword [ebp - 0x150]
mov dword [ebp - method._CS_SCHEDULE_DATA.virtual_0], vtable._CS_SCHEDULE_DATA.0
mov dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x144]
mov byte [ebp - 4], 3
mov dword [ebp - 0x24c], 1
mov dword [ebp - 0x248], ebx
mov dword [ebp - 0x244], esi
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], ecx
cmp edx, dword [ebp - 0x134]
je 0x41821e
mov dword [edx + 8], ebx
mov ebx, dword [ebp - 0x120]
mov dword [edx + 0x14], ecx
mov ecx, dword [ebp - 0x124]
mov dword [edx], vtable._CS_SCHEDULE_DATA.0
mov dword [edx + 4], 1
mov dword [edx + 0xc], esi
mov dword [edx + 0x10], eax
mov dword [edx + 0x18], 0
add edx, 0x1c
mov dword [ebp - 0x150], edx
mov byte [ebp - 4], 2
jmp 0x417eb6
lea eax, [ebp - 0x250]
push eax
push edx
lea ecx, [ebp - 0x154]
call fcn.00422e10
mov eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x124]
mov ebx, dword [ebp - 0x120]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x12c], eax
mov byte [ebp - 4], 2
jmp 0x417eb6
cmp ecx, 2
jne 0x41865a
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4182a0
test dl, dl
je 0x41829c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4182a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x418280
xor eax, eax
jmp 0x4182a5
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x128], eax
call fcn.004b94f0
cvttss2si ebx, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x148], ebx
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x19c], eax
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x144], eax
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x140], eax
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x13c], eax
call fcn.004b94f0
cvttss2si esi, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x1a0], esi
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x138], eax
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x180], eax
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x1a4], eax
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov ecx, edi
mov dword [ebp - 0x1a8], eax
call fcn.004b94f0
cvttss2si eax, dword [edi + 0x110]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x128]
test eax, eax
js 0x419122
test ebx, ebx
js 0x419118
cmp dword [ebp - 0x144], 0
jl 0x41910e
cmp dword [ebp - 0x140], 0
jl 0x419104
cmp dword [ebp - 0x13c], 0
jl 0x4190fa
test esi, esi
js 0x4190f0
cmp dword [ebp - 0x138], 0
jl 0x4190e6
cmp dword [ebp - 0x180], 0
jl 0x4190dc
mov esi, eax
lea ecx, [ebp - 0x11c]
movzx eax, bx
shl esi, 0x10
or esi, eax
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x268]
mov dword [ebp - 0x198], esi
push eax
call fcn.00422a30
mov eax, dword [ebp - 0x260]
mov ebx, dword [ebp - 0x11c]
cmp byte [eax + 0xd], 0
jne 0x418441
cmp esi, dword [eax + 0x10]
jae 0x418443
mov eax, ebx
cmp eax, ebx
jne 0x4190c4
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x1b0], esi
push eax
lea eax, [ebp - 0x274]
mov dword [ebp - 0x1ac], 0
push eax
lea ecx, [ebp - 0x11c]
call fcn.00422a30
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x25c], xmm0
cmp byte [eax + 0xd], 0
jne 0x41848e
cmp esi, dword [eax + 0x10]
jae 0x4184fc
cmp dword [ebp - 0x118], 0xaaaaaaa
je 0x4190bf
lea eax, [ebp - 0x11c]
mov dword [ebp - 0x1b8], eax
mov byte [ebp - 4], 4
push 0x18
mov dword [ebp - 0x1b4], 0
call fcn.00529f0f
add esp, 4
mov dword [ebp - 0x1b4], 0
lea ecx, [ebp - 0x11c]
mov dword [eax + 0x10], esi
push eax
push dword [ebp - 0x258]
mov dword [eax + 0x14], 0
push dword [ebp - 0x25c]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov word [eax + 0xc], 0
call fcn.004056a0
lea ecx, [ebp - 0x234]
mov dword [ebp - method._CS_NPC_DATA.virtual_0], vtable._CS_NPC_DATA.0
call fcn.00417250
mov dword [ebp - 0x1d0], 0xffffffff
mov eax, dword [ebp - 0x128]
mov byte [ebp - 4], 5
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x148]
mov ecx, dword [ebp - 0x15c]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x1f4], eax
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x204], eax
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 0x200], eax
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x1d4], eax
mov dword [ebp - 0x1f8], eax
lea eax, [ebp - 0x234]
mov dword [ebp - 0x230], 1
push eax
cmp ecx, dword [ebp - 0x130]
je 0x41862d
call fcn.00419150
mov ebx, dword [ebp - 0x120]
add ecx, 0x74
mov dword [ebp - 0x15c], ecx
mov ecx, dword [ebp - 0x124]
mov byte [ebp - 4], 2
jmp 0x417eb6
push ecx
lea ecx, [ebp - 0x160]
call fcn.00422c20
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x124]
mov ebx, dword [ebp - 0x120]
mov dword [ebp - 0x130], eax
mov byte [ebp - 4], 2
jmp 0x417eb6
cmp ecx, 3
jne 0x418702
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x418695
test dl, dl
je 0x418691
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x418695
add eax, 2
add ecx, 2
test dl, dl
jne 0x418675
xor eax, eax
jmp 0x41869a
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si esi, dword [edi + 0x110]
mov ecx, edi
call fcn.004b94f0
mov ecx, edi
cvttss2si ebx, dword [edi + 0x110]
call fcn.004b94f0
mov edx, dword [ebp - 0x184]
cmp edx, 0x5d8ed8
jge 0x418a95
cvttss2si eax, dword [edi + 0x110]
inc dword [ebp - 0x168]
mov ecx, dword [ebp - 0x124]
mov dword [edx], ebx
mov ebx, dword [ebp - 0x120]
mov dword [edx - 4], esi
mov dword [edx + 4], eax
add edx, 0xc
mov dword [ebp - 0x184], edx
jmp 0x417eb6
cmp ecx, 4
jne 0x4187ad
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x418740
test dl, dl
je 0x41873c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x418740
add eax, 2
add ecx, 2
test dl, dl
jne 0x418720
xor eax, eax
jmp 0x418745
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si esi, dword [edi + 0x110]
mov ecx, edi
call fcn.004b94f0
mov ecx, edi
cvttss2si ebx, dword [edi + 0x110]
call fcn.004b94f0
mov edx, dword [ebp - 0x18c]
cmp edx, 0x5d8efc
jge 0x418a95
cvttss2si eax, dword [edi + 0x110]
inc dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x124]
mov dword [edx], ebx
mov ebx, dword [ebp - 0x120]
mov dword [edx - 4], esi
mov dword [edx + 4], eax
add edx, 0xc
mov dword [ebp - 0x18c], edx
jmp 0x417eb6
cmp ecx, 5
jne 0x418855
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4187e8
test dl, dl
je 0x4187e4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4187e8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4187c8
xor eax, eax
jmp 0x4187ed
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si esi, dword [edi + 0x110]
mov ecx, edi
call fcn.004b94f0
mov ecx, edi
cvttss2si ebx, dword [edi + 0x110]
call fcn.004b94f0
mov edx, dword [ebp - 0x190]
cmp edx, 0x5d8f20
jge 0x418a95
cvttss2si eax, dword [edi + 0x110]
inc dword [ebp - 0x170]
mov ecx, dword [ebp - 0x124]
mov dword [edx], ebx
mov ebx, dword [ebp - 0x120]
mov dword [edx - 4], esi
mov dword [edx + 4], eax
add edx, 0xc
mov dword [ebp - 0x190], edx
jmp 0x417eb6
cmp ecx, 6
jne 0x4188fd
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x418890
test dl, dl
je 0x41888c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x418890
add eax, 2
add ecx, 2
test dl, dl
jne 0x418870
xor eax, eax
jmp 0x418895
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si esi, dword [edi + 0x110]
mov ecx, edi
call fcn.004b94f0
mov ecx, edi
cvttss2si ebx, dword [edi + 0x110]
call fcn.004b94f0
mov edx, dword [ebp - 0x178]
cmp edx, 0x5d8f44
jge 0x418a95
cvttss2si eax, dword [edi + 0x110]
inc dword [ebp - 0x174]
mov ecx, dword [ebp - 0x124]
mov dword [edx], ebx
mov ebx, dword [ebp - 0x120]
mov dword [edx - 4], esi
mov dword [edx + 4], eax
add edx, 0xc
mov dword [ebp - 0x178], edx
jmp 0x417eb6
cmp ecx, 7
jne 0x4189a6
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x418938
test dl, dl
je 0x418934
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x418938
add eax, 2
add ecx, 2
test dl, dl
jne 0x418918
xor eax, eax
jmp 0x41893d
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
cvttss2si esi, dword [edi + 0x110]
mov ecx, edi
call fcn.004b94f0
mov ecx, edi
cvttss2si ebx, dword [edi + 0x110]
call fcn.004b94f0
mov edx, dword [ebp - 0x188]
cmp edx, 0x5d8f68
jge 0x418a95
cvttss2si eax, dword [edi + 0x110]
mov ecx, dword [ebp - 0x124]
mov dword [edx], ebx
mov ebx, dword [ebp - 0x120]
inc ebx
mov dword [edx - 4], esi
mov dword [ebp - 0x120], ebx
mov dword [edx + 4], eax
add edx, 0xc
mov dword [ebp - 0x188], edx
jmp 0x417eb6
cmp ecx, 8
jne 0x418a1e
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4189e1
test dl, dl
je 0x4189dd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4189e1
add eax, 2
add ecx, 2
test dl, dl
jne 0x4189c1
xor eax, eax
jmp 0x4189e6
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
mov ecx, dword [ebp - 0x194]
cmp ecx, 4
jge 0x418a9b
cvttss2si eax, dword [edi + 0x110]
mov dword [ecx*4 + 0x5d8f64], eax
inc ecx
mov dword [ebp - 0x194], ecx
mov ecx, dword [ebp - 0x124]
jmp 0x417eb6
cmp ecx, 9
jne 0x417eb6
mov ecx, edi
call fcn.004b94f0
lea ecx, [edi + 0x114]
mov eax, 0x553dbc
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x418a60
test dl, dl
je 0x418a5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x418a60
add eax, 2
add ecx, 2
test dl, dl
jne 0x418a40
xor eax, eax
jmp 0x418a65
sbb eax, eax
or eax, 1
test eax, eax
je 0x418a9b
mov ecx, dword [ebp - 0x17c]
cmp ecx, 4
jge 0x418a9b
cvttss2si eax, dword [edi + 0x110]
mov dword [ecx*4 + 0x5d8f74], eax
inc ecx
mov dword [ebp - 0x17c], ecx
mov ecx, dword [ebp - 0x124]
jmp 0x417eb6
mov ebx, dword [ebp - 0x120]
mov ecx, edi
call fcn.004b94f0
cmp eax, 2
jne 0x417e40
mov esi, dword [ebp - 0x160]
mov ebx, dword [ebp - 0x150]
mov dword [ebp - 0x148], esi
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax]
push 0x5d909c
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [ebp - 0x12c]
mov ecx, dword [0x5d9094]
cmp edi, ebx
je 0x418da7
add edi, 8
nop word [eax + eax]
cmp ecx, dword [0x5d9098]
je 0x418d84
mov dword [ecx], vtable._CS_SCHEDULE_DATA.0
mov eax, dword [edi - 4]
mov dword [ecx + 4], eax
mov eax, dword [edi]
mov dword [ecx + 8], eax
mov eax, dword [edi + 4]
mov dword [ecx + 0xc], eax
mov eax, dword [edi + 8]
mov dword [ecx + 0x10], eax
mov eax, dword [edi + 0xc]
mov dword [ecx + 0x14], eax
mov eax, dword [edi + 0x10]
mov dword [ecx + 0x18], eax
mov ecx, dword [0x5d9094]
add ecx, 0x1c
mov dword [0x5d9094], ecx
jmp 0x418d99
push eax
push str._CastleSiege__CCastleSiege::LoadData_____iCastleSiegeCycle___0_:__d
push 1
call fcn.005262e0
mov eax, dword [ebp - 0x11c]
add esp, 0xc
push dword [eax + 4]
lea eax, [ebp - 0x11c]
push eax
mov ecx, eax
call fcn.00422a80
push 0x18
push dword [ebp - 0x11c]
call fcn.00529f3f
add esp, 8
lea ecx, [ebp - 0x160]
call fcn.00421ac0
lea ecx, [ebp - 0x154]
call fcn.00421b40
jmp 0x417d07
push ecx
push str._CastleSiege__CCastleSiege::LoadData_____Date_Order_is_wrong_:__d
push 1
call fcn.005262e0
mov eax, dword [ebp - 0x11c]
add esp, 0xc
push dword [eax + 4]
lea eax, [ebp - 0x11c]
push eax
mov ecx, eax
call fcn.00422a80
push 0x18
push dword [ebp - 0x11c]
call fcn.00529f3f
mov edi, dword [ebp - 0x160]
add esp, 8
test edi, edi
je 0x418c35
mov ebx, dword [ebp - 0x15c]
mov esi, edi
cmp esi, ebx
je 0x418bef
nop dword [eax]
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax]
add esi, 0x74
cmp esi, ebx
jne 0x418be0
mov ecx, dword [ebp - 0x130]
mov eax, 0x8d3dcb09
sub ecx, edi
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, eax, 0x74
mov eax, edi
cmp ecx, 0x1000
jb 0x418c2b
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4190ba
push ecx
push edi
call fcn.00529f3f
add esp, 8
mov edi, dword [ebp - 0x12c]
test edi, edi
je 0x417d07
mov ebx, dword [ebp - 0x150]
mov esi, edi
cmp esi, ebx
je 0x418110
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax]
add esi, 0x1c
cmp esi, ebx
jne 0x418c53
jmp 0x418110
push eax
push str._CastleSiege__CCastleSiege::LoadData_____Same_State_Exist_:__d
push 1
call fcn.005262e0
mov eax, dword [ebp - 0x11c]
add esp, 0xc
push dword [eax + 4]
lea eax, [ebp - 0x11c]
push eax
mov ecx, eax
call fcn.00422a80
push 0x18
push dword [ebp - 0x11c]
call fcn.00529f3f
mov edi, dword [ebp - 0x160]
add esp, 8
test edi, edi
je 0x418d0d
mov ebx, dword [ebp - 0x15c]
mov esi, edi
cmp esi, ebx
je 0x418cc7
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax]
add esi, 0x74
cmp esi, ebx
jne 0x418cb8
mov ecx, dword [ebp - 0x130]
mov eax, 0x8d3dcb09
sub ecx, edi
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, eax, 0x74
mov eax, edi
cmp ecx, 0x1000
jb 0x418d03
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4190ba
push ecx
push edi
call fcn.00529f3f
add esp, 8
mov edi, dword [ebp - 0x12c]
test edi, edi
je 0x417d07
mov ebx, dword [ebp - 0x150]
mov esi, edi
cmp esi, ebx
je 0x418d36
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax]
add esi, 0x1c
cmp esi, ebx
jne 0x418d27
mov ecx, dword [ebp - 0x134]
mov eax, 0x92492493
sub ecx, edi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, edi
shl ecx, 2
cmp ecx, 0x1000
jb 0x418155
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4190ba
jmp 0x418155
lea eax, [edi - 8]
push eax
push ecx
mov ecx, 0x5d9090
call fcn.00422e10
mov ecx, dword [0x5d9094]
add edi, 0x1c
lea eax, [edi - 8]
cmp eax, ebx
jne 0x418af0
mov edi, ecx
mov eax, 0x92492493
sub edi, dword [0x5d9090]
imul edi
push 0x417600
add edx, edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
mov ecx, dword [0x5d9090]
push eax
call fcn.00421f80
mov edi, dword [0x5d9090]
add esp, 8
mov ecx, dword [0x5d9094]
cmp edi, ecx
je 0x418ec8
sub ecx, edi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x418ec8
mov esi, dword [0x5d9094]
xor ebx, ebx
xor ecx, ecx
sub esi, edi
mov eax, 0x92492493
imul esi
inc ecx
add edx, esi
mov dword [ebp - 0x164], ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x418e86
mov eax, dword [edi + ebx + 0x28]
sub eax, dword [edi + ebx + 0xc]
lea eax, [eax + eax*2]
shl eax, 3
sub eax, dword [edi + ebx + 0x10]
add eax, dword [edi + ebx + 0x2c]
mov ecx, eax
shl ecx, 4
sub ecx, eax
shl ecx, 2
sub ecx, dword [edi + ebx + 0x14]
add ecx, dword [edi + ebx + 0x30]
mov eax, ecx
shl eax, 4
sub eax, ecx
shl eax, 2
test eax, eax
jns 0x418e80
push dword [edi + ebx + 0x24]
push dword [edi + ebx + 8]
push str._CastleSiege__CCastleSiege::LoadData_____Date_Order_is_wrong__sort_fail__:__d__d
push 1
call fcn.005262e0
add esp, 0x10
jmp 0x418e8e
mov dword [edi + ebx + 0x18], eax
jmp 0x418e8e
mov dword [edi + ebx + 0x18], 0
mov esi, dword [0x5d9094]
mov eax, 0x92492493
mov edi, dword [0x5d9090]
mov ecx, esi
sub ecx, edi
add ebx, 0x1c
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x164]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jb 0x418e11
mov esi, dword [ebp - 0x148]
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x5d909c
call edi
push 0x5d90c0
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ebx, dword [ebp - 0x15c]
cmp esi, ebx
je 0x418f27
mov ecx, dword [0x5d90b8]
push esi
cmp ecx, dword [0x5d90bc]
je 0x418f0f
call fcn.00419150
mov ecx, dword [0x5d90b8]
add ecx, 0x74
mov dword [0x5d90b8], ecx
jmp 0x418f20
push ecx
mov ecx, 0x5d90b4
call fcn.00422c20
mov ecx, dword [0x5d90b8]
add esi, 0x74
cmp esi, ebx
jne 0x418ef0
push 0x5d90c0
call edi
mov esi, dword [0x5d9090]
mov edi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ebx, dword [sym.imp.USER32.dll_wsprintfA]
cmp esi, dword [0x5d9094]
je 0x418f9a
nop dword [eax + eax]
push pe_nt_image_headers32
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.0052bd20
add esp, 0xc
lea eax, [ebp - 0x114]
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push dword [esi + 8]
push str.STT:_d__DAY:_d__HOUR:_d__MIN:_d__GAP:_d_n
push eax
call ebx
add esp, 0x1c
lea eax, [ebp - 0x114]
push eax
call edi
add esi, 0x1c
cmp esi, dword [0x5d9094]
jne 0x418f50
mov esi, dword [0x5d90b4]
cmp esi, dword [0x5d90b8]
je 0x419052
nop dword [eax]
push esi
lea ecx, [ebp - 0x234]
call fcn.00419150
push pe_nt_image_headers32
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.0052bd20
add esp, 0xc
mov ecx, 0x5556e4
cmp dword [ebp - 0x224], 0
mov eax, 0x5556e0
cmove eax, ecx
push dword [ebp - 0x1f8]
push dword [ebp - 0x1fc]
push dword [ebp - 0x200]
push dword [ebp - 0x204]
push dword [ebp - 0x208]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push dword [ebp - 0x218]
push dword [ebp - 0x220]
push eax
push dword [ebp - 0x228]
lea eax, [ebp - 0x114]
push dword [ebp - 0x22c]
push str.NUM:_d__IDX:_d__DBSAVE:_s__SIDE:_d__DFLEVEL:_d__RGLEVEL:_d__MXHP:_d____d__d____d__d___DIR:_d_n
push eax
call ebx
add esp, 0x38
lea eax, [ebp - 0x114]
push eax
call edi
add esi, 0x74
cmp esi, dword [0x5d90b8]
jne 0x418fb0
mov eax, dword [ebp - 0x11c]
mov dword [0x5d8f94], 1
push dword [eax + 4]
lea eax, [ebp - 0x11c]
push eax
mov ecx, eax
call fcn.00422a80
push 0x18
push dword [ebp - 0x11c]
call fcn.00529f3f
add esp, 8
lea ecx, [ebp - 0x160]
call fcn.00421ac0
lea ecx, [ebp - 0x154]
call fcn.00421b40
mov eax, 1
jmp 0x417d09
push str._CastleSiege__file_load_error___File_Name_Error
call fcn.00526250
mov ecx, edi
call fcn.004b9940
push eax
call fcn.00526250
call fcn.0052d95f
call fcn.004058b0
mov eax, dword [ebp - 0x148]
push eax
mov eax, dword [ebp - 0x128]
push eax
push str._CastleSiege__CCastleSiege::LoadData_____Same_Npc_Key_Exist_:_NUM:_d_IDX:_d
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_SY___0_
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_SX___0_
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_MAXHP___0_
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_RG_LEVEL___0_
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_DF_LEVEL___0_
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_SIDE___0_
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_INDEX___0_
call fcn.00526250
push str._CastleSiege__CCastleSiege::LoadData_____Data_Fail__iNPC_NUM___0_
call fcn.00526250
int3