Function at 0x419750
Capabilities:
Read file on windows
Resolve function by parsing pe exports

Disassembly:
mov eax, 0xd8d7c
call fcn.00487230
mov eax, dword [esp + 0xd8d80]
push ebx
push ebp
push esi
push edi
push 0x912e68
xor ebx, ebx
push eax
push 0x912f68
cmp dword [esp + 0xd8da0], ebx
je 0x41978a
push str._s_asave_1d._s
lea eax, [esp + 0x80]
push eax
jmp 0x419797
push str._s_save_03d._s
lea ecx, [esp + 0x80]
push ecx
call fcn.00483a3c
add esp, 0x14
lea edx, [esp + 0x70]
push 0x4c70fc
push edx
call fcn.0048466b
mov esi, eax
add esp, 8
cmp esi, ebx
jne 0x4197c4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8d7c
ret
push esi
push 1
lea eax, [esp + 0x68]
push 4
push eax
call fcn.00484992
add esp, 0x10
cmp dword [esp + 0x60], 0x46504957
push ebx
jne 0x41980d
push 8
push esi
call fcn.004853aa
add esp, 0xc
push esi
push 0x18
lea ecx, [esp + 0x48]
push 1
push ecx
call fcn.00484992
mov edx, dword [esp + 0x64]
push 1
push edx
push esi
call fcn.004853aa
add esp, 0x1c
jmp 0x419817
push ebx
push esi
call fcn.004853aa
add esp, 0xc
cmp dword [0x91306c], ebx
je 0x419834
mov eax, 0x7f5
call fcn.00449220
call fcn.00457e90
mov dword [0x91306c], ebx
mov eax, dword [0x4fdc60]
cmp eax, ebx
je 0x419846
push eax
call fcn.004835c6
add esp, 4
mov dword [0x4fdc60], ebx
mov edi, 0x6da2a4
mov eax, dword [edi]
cmp eax, ebx
je 0x419860
push eax
call fcn.004835c6
add esp, 4
mov dword [edi], ebx
add edi, 0x2c
cmp edi, 0x6da3ac
jl 0x419851
xor ebp, ebp
mov edi, 0x5f7280
mov eax, dword [edi - 0xa4]
cmp eax, ebx
je 0x419887
push eax
call fcn.004835c6
add esp, 4
mov eax, dword [edi]
mov dword [edi - 0xa4], ebx
cmp eax, ebx
je 0x41989c
push eax
call fcn.004835c6
add esp, 4
mov dword [edi], ebx
cmp dword [edi - 0xd0], ebx
je 0x4198b6
push ebx
push ebp
call fcn.00416940
add esp, 8
mov dword [edi - 0xd0], ebx
add edi, 0x150
inc ebp
cmp edi, 0x5f7bb0
jl 0x419874
mov eax, dword [0x902a6c]
cmp eax, ebx
je 0x4198e8
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [0x902a6c], ebx
mov dword [0x7ec774], ebx
mov byte [0x7f4394], bl
mov eax, dword [0x4fddac]
mov dword [0x4fdda4], ebx
cmp eax, ebx
je 0x419900
push eax
call fcn.004835c6
add esp, 4
mov eax, dword [0x4f4c90]
mov dword [0x4fddac], ebx
cmp eax, ebx
je 0x41991e
push eax
call fcn.004835c6
add esp, 4
mov dword [0x4f4c90], ebx
cmp dword [0x7ec560], ebx
je 0x419949
mov eax, dword [0x904a1c]
cmp eax, ebx
je 0x419949
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [0x904a1c], ebx
mov dword [0x7f2684], ebx
mov byte [0x901914], bl
mov eax, dword [0x7ec584]
cmp eax, ebx
je 0x419961
push eax
call fcn.004835c6
add esp, 4
mov dword [0x7ec584], ebx
mov eax, dword [0x5fd070]
mov dword [0x913210], ebx
mov dword [0x913214], ebx
mov dword [0x913218], ebx
cmp eax, ebx
je 0x4199c3
mov ecx, dword [0x5fd078]
cmp ecx, ebx
je 0x419994
push ecx
call fcn.004835c6
mov eax, dword [0x5fd070]
add esp, 4
mov dword [0x5fd078], ebx
cmp eax, ebx
je 0x4199a7
push eax
call fcn.004835c6
add esp, 4
xor eax, eax
mov dword [0x5fd070], ebx
mov dword [0x5fd080], eax
mov dword [0x5fd084], eax
mov dword [0x5fd088], eax
mov byte [0x5fd08c], al
mov eax, dword [0x4ff194]
cmp eax, ebx
je 0x4199d5
push eax
call fcn.004835c6
add esp, 4
push 0x5c4
push ebx
push 0x4fed68
call fcn.00487bc0
mov eax, dword [0x6da3a0]
add esp, 0xc
cmp eax, ebx
je 0x419a24
push eax
call fcn.004835c6
add esp, 4
xor eax, eax
mov dword [0x6da398], eax
mov dword [0x6da39c], eax
mov dword [0x6da3a0], eax
mov dword [0x6da3a4], eax
mov dword [0x6da3a8], eax
mov dword [0x6da3ac], eax
mov dword [0x6da3b0], eax
mov dword [0x6da3b4], eax
mov ecx, dword [0x913540]
mov eax, dword [0x91353c]
mov ebx, ecx
cmp eax, ecx
jbe 0x419a45
call fcn.00484597
mov ecx, dword [0x913540]
mov eax, dword [0x91353c]
mov edi, dword [0x913530]
mov ebp, eax
cmp eax, ecx
jbe 0x419a56
call fcn.00484597
mov eax, dword [0x913530]
push ebx
push edi
push ebp
push eax
lea edi, [esp + 0x78]
call fcn.0043d3c0
mov ecx, dword [0x912e58]
mov eax, dword [0x913578]
mov edx, dword [0x912e5c]
mov dword [0x912444], ecx
xor ecx, ecx
mov dword [0x912448], edx
mov dword [0x9131f4], ecx
mov dword [0x9131f8], ecx
mov dword [0x9131fc], ecx
mov dword [0x4fda74], ecx
mov dword [0x913548], ecx
cmp eax, ecx
je 0x419ad6
lea edi, [eax + 4]
mov ebp, eax
mov eax, dword [edi]
test eax, eax
je 0x419abd
push eax
call fcn.004835c6
add esp, 4
push ebp
mov dword [edi], 0
call fcn.0048376d
add esp, 4
mov dword [0x913578], 0
mov eax, dword [0x913258]
xor ebx, ebx
mov dword [0x913580], ebx
mov dword [0x913584], ebx
mov dword [0x913588], ebx
mov dword [0x91359c], ebx
mov dword [0x9135a0], ebx
mov dword [0x9135a4], ebx
mov dword [0x9135b8], ebx
mov dword [0x9135bc], ebx
mov dword [0x9135c0], ebx
mov dword [0x913228], ebx
cmp eax, ebx
je 0x419b42
lea edi, [eax + 4]
mov ebp, eax
mov eax, dword [edi]
cmp eax, ebx
je 0x419b31
push eax
call fcn.004835c6
add esp, 4
push ebp
mov dword [edi], ebx
call fcn.0048376d
add esp, 4
mov dword [0x913258], ebx
mov edi, dword [0x9130bc]
mov dword [0x913260], ebx
mov dword [0x913264], ebx
mov dword [0x913268], ebx
mov dword [0x91327c], ebx
mov dword [0x913280], ebx
mov dword [0x913284], ebx
mov dword [0x913298], ebx
mov dword [0x91329c], ebx
mov dword [0x9132a0], ebx
call fcn.00458ad0
mov edi, 0x91345c
mov ebp, dword [edi - 0xc]
mov dword [edi - 0x3c], ebx
cmp ebp, ebx
je 0x419bb1
mov eax, dword [ebp + 4]
cmp eax, ebx
je 0x419ba2
push eax
call fcn.004835c6
add esp, 4
push ebp
mov dword [ebp + 4], ebx
call fcn.0048376d
add esp, 4
mov dword [edi - 0xc], ebx
mov dword [edi - 4], ebx
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 0x18], ebx
mov dword [edi + 0x1c], ebx
mov dword [edi + 0x20], ebx
mov dword [edi + 0x34], ebx
mov dword [edi + 0x38], ebx
mov dword [edi + 0x3c], ebx
add edi, 0x88
cmp edi, 0x91356c
jl 0x419b88
push esi
push 1
lea eax, [esp + 0x6c]
push 4
push eax
call fcn.00484992
push esi
push 0x11
lea ecx, [esp + 0x88]
push 1
push ecx
call fcn.00484992
push esi
push 1
lea edx, [esp + 0x84]
push 4
push edx
call fcn.00484992
push esi
push 1
push 0xe4
push 0x4fdcc0
call fcn.00484992
add esp, 0x40
push esi
push 1
push 4
push 0x4f9e38
call fcn.00484992
push esi
push 1
push 0x3c1c
push 0x4f9e58
call fcn.00484992
mov eax, dword [0x912430]
neg eax
sbb eax, eax
and eax, 0xfffffff2
add eax, 0xf
push 0x400
push eax
push 0x4fa26c
mov dword [0x4f9ec4], eax
mov dword [0x4f9ec8], eax
call fcn.00487bc0
add esp, 0x2c
push esi
push 1
push 0x19b4
push 0x5f9fe0
call fcn.00484992
push esi
push 1
push 0x110
push 0x4fdaf0
call fcn.00484992
add esp, 0x20
mov edi, 0x913128
lea ebx, [ebx]
push esi
push 1
push 4
push edi
call fcn.00484992
add edi, 4
add esp, 0x10
cmp edi, 0x913140
jl 0x419ca0
mov ebp, 0x5ff4c8
mov edi, 0x5f71a8
push esi
push 1
push 0x150
push edi
call fcn.00484992
push esi
push 1
push 0x1ef70
push ebp
call fcn.00484992
add edi, 0x150
add esp, 0x20
add ebp, 0x1ef70
cmp edi, 0x5f7ad8
jl 0x419cc3
xor edx, edx
jmp 0x419d00
mov eax, edx
mov ecx, 0x64
jmp 0x419d10
mov edi, dword [eax + 0x61cb3c]
mov dword [esp + eax + 0x1d7ec], edi
mov edi, dword [eax + 0x61cb40]
mov dword [esp + eax + 0x1d7f0], edi
add eax, 0x18
sub ecx, 1
jne 0x419d10
add edx, 0x1ef70
cmp edx, 0xd8c10
jl 0x419d00
push esi
push 1
push 0xac
push 0x4fdc00
call fcn.00484992
add esp, 0x10
mov edi, 0x6da3b8
lea ebx, [ebx]
push esi
push 1
push 0x34
push edi
call fcn.00484992
add edi, 0x34
add esp, 0x10
cmp edi, 0x6da4bc
jl 0x419d60
push esi
push 1
push 0x1c
push 0x4f4c8c
call fcn.00484992
push esi
push 1
push 0x2460
push 0x5fd048
call fcn.00484992
push esi
push 1
push 0x1c
push 0x4f9e3c
call fcn.00484992
push esi
push 1
push 0x11200c
push 0x6da4c0
call fcn.00484992
add esp, 0x40
push esi
push 1
push 0x5c4
push 0x4fed68
call fcn.00484992
push esi
push 1
push 0x4c
push 0x7ec560
call fcn.00484992
push esi
push 1
push 0x20
push 0x6da398
call fcn.00484992
push esi
push 1
push 0x424
push 0x4f4868
call fcn.00484992
add esp, 0x40
push esi
push 1
push 4
push 0x913074
call fcn.00484992
push esi
push 1
push 0x1c
push 0x4f5c48
call fcn.00484992
push esi
push 1
push 8
push 0x4e5d74
call fcn.00484992
push esi
push 1
push 8
push 0x4e5d7c
call fcn.00484992
add esp, 0x40
push esi
push 1
push 8
push 0x4e5d84
call fcn.00484992
push esi
push 1
push 0x20
push 0x7ec5ac
call fcn.00484992
push esi
push 1
push 4
push 0x91306c
call fcn.00484992
push esi
push 1
push 8
lea eax, [esp + 0x74]
push eax
call fcn.00484992
add esp, 0x40
push esi
push 1
push 0xd
push 0x4f5c64
call fcn.00484992
push esi
push 1
push 0x24
push 0x4fdda4
call fcn.00484992
push esi
push 1
push 4
push 0x913118
mov dword [0x4fddb0], ebx
mov dword [0x4fddac], ebx
call fcn.00484992
add esp, 0x30
mov edi, 0x9132c8
push esi
push 1
lea ecx, [edi - 0x18]
push 4
push ecx
mov dword [edi - 4], ebx
mov dword [edi], ebx
mov dword [edi + 4], ebx
call fcn.00484992
push esi
push 1
lea edx, [edi - 0x14]
push 4
push edx
call fcn.00484992
push esi
push 1
lea eax, [edi - 0x10]
push 8
push eax
call fcn.00484992
add edi, 0x34
add esp, 0x30
cmp edi, 0x913400
jl 0x419ec2
push esi
push 1
push 0x18
push 0x4f3ea0
call fcn.00484992
push esi
push 1
push 0x18
push 0x5f7ad8
call fcn.00484992
add esp, 0x20
mov edi, 0x6da290
push esi
push 1
push 0x2c
push edi
call fcn.00484992
add edi, 0x2c
add esp, 0x10
cmp edi, 0x6da398
jl 0x419f28
cmp dword [0x91307c], ebx
je 0x419f4f
push esi
call fcn.0045b2e0
cmp dword [0x913080], ebx
je 0x419f5d
push esi
call fcn.0045e610
cmp dword [0x9130b0], ebx
je 0x419f6c
mov eax, esi
call fcn.00459950
push esi
push 1
push 4
push 0x4fda98
call fcn.00484992
push esi
push 0x3e8
push 2
push 0x6d80d8
call fcn.00484992
push 0x45
push ebx
push 0x4f3e48
call fcn.00487bc0
add esp, 0x2c
push esi
push 0x44
push 1
push 0x4f3e48
call fcn.00484992
push esi
call fcn.004854f7
add esp, 0x14
lea edi, [esp + 0x70]
call fcn.0040a1c0
test eax, eax
je 0x4197b7
mov ecx, dword [0x4f7760]
mov edx, dword [esp + 0x5c]
add ecx, edx
mov dword [0x4f7764], ecx
mov dword [0x4e6ee8], ebx
mov dword [0x4f1ef0], ebx
mov dword [0x4f9e68], ebx
mov dword [0x4f9e64], ebx
mov dword [0x4f9e60], ebx
mov dword [0x4f9e5c], ebx
mov dword [0x4f9e70], ebx
mov dword [0x4f9e7c], 1
call fcn.00434ee0
mov esi, dword [0x902a44]
mov dword [0x6da4c0], ebx
cmp esi, ebx
je 0x41a02a
push ebx
call fcn.00448fc0
add esp, 4
mov eax, dword [0x4f94a8]
push 0x26f70
push ebx
push eax
call fcn.00487bc0
add esp, 0xc
push ebx
call fcn.00418640
add esp, 4
xor ebp, ebp
mov dword [esp + 0x14], ebp
lea ecx, [ecx]
mov esi, ebp
imul esi, esi, 0x150
mov dword [esi + 0x5f71dc], ebx
mov dword [esi + 0x5f7280], ebx
cmp dword [esi + 0x5f7250], ebx
je 0x41a076
mov dword [esi + 0x5f7258], 1
cmp dword [esi + 0x5f71b0], ebx
jne 0x41a1fc
cmp byte [esi + 0x5f71e8], 0
lea ebx, [esi + 0x5f71e8]
je 0x41a309
lea ebp, [esp + 0x70]
mov eax, ebx
sub ebp, ebx
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [eax + ebp], cl
inc eax
test cl, cl
jne 0x41a0a0
lea eax, [esp + 0x70]
dec eax
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a0b0
mov ecx, dword [str..wip]
mov edi, dword [esp + 0x14]
mov dl, byte [0x4c6ef0]
mov dword [eax], ecx
mov byte [eax + 4], dl
test edi, edi
je 0x41a0e8
lea eax, [esp + 0x1c]
push eax
lea edi, [esp + 0x74]
call fcn.0043aee0
mov edi, dword [esp + 0x18]
add esp, 4
jmp 0x41a0ff
lea eax, [esp + 0x70]
call fcn.0043ac90
lea edx, [esp + 0x1c]
mov cl, byte [eax]
mov byte [edx], cl
inc eax
inc edx
test cl, cl
jne 0x41a0f5
mov ecx, dword [esi + 0x5f71f8]
push ecx
mov ecx, dword [esi + 0x5f71b8]
lea edx, [esp + 0x74]
push edx
mov edx, dword [edi*4 + 0x4f2300]
lea eax, [esp + 0x24]
push eax
push ecx
push edx
call fcn.00401210
add esp, 0x14
test eax, eax
je 0x4197b7
test edi, edi
je 0x41a2e8
mov eax, ebx
lea esp, [esp]
mov cl, byte [eax]
mov byte [eax + ebp], cl
inc eax
test cl, cl
jne 0x41a140
lea eax, [esp + 0x70]
dec eax
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a150
mov ecx, dword [str..msk]
mov dl, byte [0x4c6ef8]
mov dword [eax], ecx
push 1
mov byte [eax + 4], dl
push 1
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x84]
call fcn.004666e0
mov eax, dword [esp + 0x58]
imul eax, dword [esp + 0x54]
add eax, 7
add esp, 0x14
push eax
call fcn.004836a3
add esp, 4
mov dword [esi + 0x5f71dc], eax
test eax, eax
je 0x4197b7
test al, 7
je 0x41a1bc
shr eax, 3
lea eax, [eax*8 + 8]
mov dword [esi + 0x5f71e0], eax
mov ecx, dword [esi + 0x5f71f8]
push ecx
mov edx, eax
push 1
push edx
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x80]
lea edx, [esp + 0x2c]
call fcn.00466950
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x24]
push ecx
push edx
add eax, 0x465
push eax
jmp 0x41a2e0
mov eax, ebp
call fcn.00416800
test eax, eax
je 0x4197b7
cmp ebp, ebx
je 0x41a2e8
mov ecx, ebp
imul ecx, ecx, 0x1ef70
lea eax, [ecx + 0x5ff4c8]
lea edx, [esp + 0x70]
sub edx, eax
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x41a227
lea eax, [esp + 0x70]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a236
mov edx, dword [str..msk]
mov cl, byte [0x4c6ef8]
mov dword [eax], edx
lea edx, [esp + 0x1c]
push edx
lea edi, [esp + 0x74]
mov byte [eax + 4], cl
call fcn.0043aee0
add esp, 4
push 1
push 1
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x2c]
push edx
mov eax, edi
call fcn.004666e0
mov eax, dword [esp + 0x58]
imul eax, dword [esp + 0x54]
add eax, 7
add esp, 0x14
push eax
call fcn.004836a3
add esp, 4
mov dword [esi + 0x5f71dc], eax
cmp eax, ebx
je 0x4197b7
test al, 7
je 0x41a2ae
shr eax, 3
lea eax, [eax*8 + 8]
push ebx
mov ecx, eax
push 1
push ecx
lea edx, [esp + 0x4c]
mov dword [esi + 0x5f71e0], eax
push edx
lea eax, [esp + 0x80]
lea edx, [esp + 0x2c]
call fcn.00466950
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
push eax
push ecx
add ebp, 0x465
push ebp
call fcn.00449090
add esp, 0x1c
mov eax, dword [esi + 0x5f7200]
test eax, eax
je 0x41a309
mov edx, dword [esi + 0x5f71fc]
push 1
push eax
mov eax, dword [esp + 0x1c]
push edx
push eax
call fcn.00434ab0
add esp, 0x10
mov eax, dword [esp + 0x14]
inc eax
cmp eax, 7
mov dword [esp + 0x14], eax
jge 0x41a320
xor ebx, ebx
mov ebp, eax
jmp 0x41a050
xor ebp, ebp
jmp 0x41a330
lea esi, [ebp + 0x61d49c]
mov edi, 0x64
jmp 0x41a340
cmp dword [esi + 0x10], 0
je 0x41a35a
mov dword [esi], 0
call dword [0x4b939c]
add eax, 0x1f4
mov dword [esi + 0x20], eax
add esi, 0x28
sub edi, 1
jne 0x41a340
mov eax, ebp
lea ecx, [edi + 0x64]
jmp 0x41a370
mov edx, dword [esp + eax + 0x1d7ec]
mov dword [eax + 0x61cb3c], edx
mov edx, dword [esp + eax + 0x1d7f0]
mov dword [eax + 0x61cb40], edx
add eax, 0x18
sub ecx, 1
jne 0x41a370
add ebp, 0x1ef70
cmp ebp, 0xd8c10
jl 0x41a330
cmp dword [0x4fdda4], ecx
je 0x41a3bb
mov eax, dword [0x4fdda8]
push eax
mov esi, 0x4fddb4
call fcn.0043cbd0
add esp, 4
cmp dword [0x4f4c8c], 0
je 0x41a4ae
xor eax, eax
lea ebx, [ebx]
mov cl, byte [eax + 0x4f4c98]
mov byte [esp + eax + 0x70], cl
inc eax
test cl, cl
jne 0x41a3d0
lea eax, [esp + 0x70]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a3e4
mov ecx, dword [str..msk]
mov dl, byte [0x4c6ef8]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x70]
call fcn.0043ac90
push 1
mov edi, eax
push 1
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x28]
push ecx
push edi
lea eax, [esp + 0x84]
call fcn.004666e0
add esp, 0x14
test eax, eax
je 0x4197b7
cmp dword [esp + 0x18], 8
jne 0x4197b7
mov eax, dword [esp + 0x20]
imul eax, dword [esp + 0x1c]
add eax, 7
push eax
call fcn.004836a3
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4197b7
test bl, 7
je 0x41a46b
mov edx, ebx
shr edx, 3
lea esi, [edx*8 + 8]
jmp 0x41a46d
mov esi, ebx
push 0
push 1
lea eax, [esp + 0x24]
push esi
push eax
lea eax, [esp + 0x80]
mov edx, edi
call fcn.00466950
add esp, 0x10
test eax, eax
jne 0x41a4a2
push ebx
call fcn.004835c6
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8d7c
ret
mov dword [0x4f4c90], ebx
mov dword [0x4f4c94], esi
cmp byte [0x4fdc38], 0
je 0x41a5ea
xor esi, esi
xor eax, eax
nop
mov cl, byte [eax + 0x4fdc38]
mov byte [esp + eax + 0x70], cl
inc eax
test cl, cl
jne 0x41a4c0
lea eax, [esp + 0x70]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a4d4
mov ecx, dword [str..wip]
mov dl, byte [0x4c6ef0]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x70]
push esi
push eax
call fcn.0043ac90
mov ecx, dword [0x4fdc04]
push eax
push ecx
push 0x7f2
call fcn.00401210
add esp, 0x14
test eax, eax
je 0x4197b7
mov dword [0x4fdc64], esi
mov dword [0x4fdc60], esi
xor eax, eax
mov cl, byte [eax + 0x4fdc38]
mov byte [esp + eax + 0x70], cl
inc eax
test cl, cl
jne 0x41a523
lea eax, [esp + 0x70]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a537
mov edx, dword [str..msk]
mov cl, byte [0x4c6ef8]
mov dword [eax], edx
mov byte [eax + 4], cl
lea eax, [esp + 0x70]
call fcn.0043ac90
push 1
mov edi, eax
push 1
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x28]
push eax
push edi
lea eax, [esp + 0x84]
call fcn.004666e0
add esp, 0x14
test eax, eax
je 0x41a5ea
cmp dword [esp + 0x18], 8
jne 0x41a5ea
mov eax, dword [esp + 0x20]
imul eax, dword [esp + 0x1c]
add eax, 7
push eax
call fcn.004836a3
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x41a5ea
test bl, 7
je 0x41a5b2
mov ecx, ebx
shr ecx, 3
lea esi, [ecx*8 + 8]
jmp 0x41a5b4
mov esi, ebx
push 0
push 1
lea edx, [esp + 0x24]
push esi
push edx
lea eax, [esp + 0x80]
mov edx, edi
call fcn.00466950
add esp, 0x10
test eax, eax
jne 0x41a5de
push ebx
call fcn.004835c6
add esp, 4
jmp 0x41a5ea
mov dword [0x4fdc60], ebx
mov dword [0x4fdc64], esi
movsx esi, word [0x6d8896]
call fcn.0045a270
xor ebx, ebx
cmp dword [0x7ec560], ebx
je 0x41a628
mov eax, dword [0x7ec578]
mov ecx, dword [0x7ec574]
push 0x7ec564
push eax
push ecx
mov dword [0x7ec584], ebx
call fcn.00424d90
add esp, 0xc
test eax, eax
je 0x4197b7
cmp dword [0x6da398], ebx
je 0x41a680
xor eax, eax
mov cl, byte [eax + 0x6da3a8]
mov byte [esp + eax + 0x70], cl
inc eax
test cl, cl
jne 0x41a632
xor eax, eax
lea edx, [esp + 0x70]
push edx
mov dword [0x6da398], eax
mov dword [0x6da39c], eax
mov dword [0x6da3a0], eax
mov dword [0x6da3a4], eax
mov dword [0x6da3a8], eax
mov dword [0x6da3ac], eax
mov dword [0x6da3b0], eax
mov dword [0x6da3b4], eax
call fcn.0042b9a0
add esp, 4
test eax, eax
je 0x4197b7
cmp dword [0x4f3ea8], ebx
je 0x41a699
call dword [0x4b939c]
sub eax, dword [0x4f3eb4]
mov dword [0x4f3eb4], eax
cmp dword [0x5f7ae0], ebx
je 0x41a6b2
call dword [0x4b939c]
sub eax, dword [0x5f7aec]
mov dword [0x5f7aec], eax
mov eax, 0x5fd080
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a6c0
sub eax, edx
je 0x41a70d
push 0x5fd080
lea eax, [esp + 0x74]
push str._s.wip
push eax
mov dword [0x5fd070], ebx
mov dword [0x5fd078], ebx
call fcn.00483a3c
add esp, 0xc
lea eax, [esp + 0x70]
call fcn.0043ac90
push eax
mov edi, 0x5fd080
call fcn.0041b740
add esp, 4
test eax, eax
je 0x4197b7
cmp dword [0x4f5c48], ebx
je 0x41a753
mov eax, dword [0x4f5c5c]
imul eax, eax, 0x64
mov ecx, 1
mov dword [0x913224], ebx
mov dword [0x913214], ebx
mov dword [0x913218], eax
mov dword [0x913220], ebx
mov dword [0x91320c], 0xffffffff
mov dword [0x91321c], ecx
cmp eax, ebx
je 0x41a753
mov dword [0x913210], ecx
cmp dword [0x4fdaf0], ebx
je 0x41a7cd
cmp dword [0x91239c], ebx
jne 0x41a7cd
fild dword [0x91230c]
mov ecx, dword [0x4fdaf4]
push ebx
push ecx
fimul dword [0x4fdaf8]
push ebx
push ebx
fmul qword [0x4d6ae0]
call fcn.004880e0
push eax
push ebx
mov eax, 0x4fdafc
call fcn.004616d0
mov edx, dword [0x4fdaf4]
mov eax, 0xa
sub eax, dword [0x4fdaf8]
push ebx
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
push edx
push ebx
fimul dword [0x91230c]
push ebx
fmul qword [0x4d6ae0]
call fcn.004880e0
push eax
push 1
mov eax, 0x4fdafc
call fcn.004616d0
jmp 0x41a831
mov eax, dword [0x7ec5cc]
mov ebp, dword [eax + 0xc]
cmp ebp, ebx
je 0x41a804
mov esi, dword [eax + 4]
add esi, 0x14
cmp esi, 0x7f
ja 0x41a804
mov edi, dword [ebp + esi*4 + 0x10]
cmp edi, ebx
je 0x41a804
push edi
call fcn.00462430
push edi
call fcn.0048376d
mov eax, dword [0x7ec5cc]
add esp, 4
mov dword [ebp + esi*4 + 0x10], ebx
mov ebp, dword [eax + 0xc]
cmp ebp, ebx
je 0x41a831
mov esi, dword [eax + 8]
add esi, 0x16
cmp esi, 0x7f
ja 0x41a831
mov edi, dword [ebp + esi*4 + 0x10]
cmp edi, ebx
je 0x41a831
push edi
call fcn.00462430
push edi
call fcn.0048376d
add esp, 4
mov dword [ebp + esi*4 + 0x10], ebx
cmp dword [0x91306c], 3
jne 0x41a883
push 0x2d0
push 0x500
push 0xe
call fcn.00449090
mov ecx, dword [0x902a28]
add esp, 0xc
push ebx
push ecx
push 0x4f5c64
call fcn.00457340
mov eax, dword [0x913184]
add esp, 0xc
cmp eax, ebx
je 0x41a87e
mov ecx, dword [esp + 0x3c]
mov edx, dword [eax]
mov edx, dword [edx + 0x28]
push ecx
mov ecx, dword [esp + 0x3c]
push ecx
push eax
call edx
call fcn.00457d40
cmp dword [0x91306c], 4
jne 0x41a8db
mov eax, dword [0x4fdc14]
mov ecx, dword [0x4fdc10]
push eax
push ecx
push 0x7f2
call fcn.00449090
mov edx, dword [0x902a28]
add esp, 0xc
push ebx
push edx
push 0x4f5c64
call fcn.00457340
mov eax, dword [0x913184]
add esp, 0xc
cmp eax, ebx
je 0x41a8d6
mov edx, dword [esp + 0x3c]
mov ecx, dword [eax]
push edx
mov edx, dword [esp + 0x3c]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
call fcn.00457d40
mov dword [0x4ff198], ebx
mov dword [0x4ff194], ebx
cmp dword [0x4fed68], ebx
je 0x41a90d
mov eax, 0x4fed6c
mov dword [0x4fed68], ebx
call fcn.0043ac90
push eax
mov eax, 0x4fed6c
call fcn.00421610
add esp, 4
call fcn.0042b680
or eax, 0xffffffff
mov dword [0x4f777c], ebx
mov dword [0x4f7778], ebx
mov dword [0x4f77a0], ebx
mov dword [0x4f779c], ebx
call fcn.00434640
xor edi, edi
mov esi, 0x6da3cc
lea esp, [esp]
cmp dword [esi - 0x14], ebx
je 0x41a99e
cmp dword [esi - 8], ebx
jne 0x41a94f
cmp dword [esi - 0xc], ebx
je 0x41a99b
cmp dword [0x9123a0], ebx
jne 0x41a998
fild dword [0x912310]
fimul dword [esi]
fmul qword [0x4d6ae0]
call fcn.004880e0
cmp dword [0x91240c], ebx
je 0x41a976
xor ecx, ecx
jmp 0x41a979
mov ecx, dword [esi + 4]
mov edx, dword [esi + 8]
push edx
push ecx
mov ecx, dword [esi - 0xc]
push ebx
push ebx
push ebx
neg ecx
sbb ecx, ecx
push ecx
push eax
push ebx
lea edx, [esi + 0xc]
push edx
mov eax, edi
call fcn.00461a70
jmp 0x41a99b
mov dword [esi - 8], ebx
mov dword [esi - 4], ebx
add esi, 0x34
inc edi
cmp esi, 0x6da4d0
jl 0x41a940
mov esi, 0x6da2ac
lea ebp, [esp + 0x70]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], esi
sub ebp, esi
mov edi, 1
mov eax, esi
mov dword [esi - 4], ebx
mov dword [esi - 8], ebx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a9d0
sub eax, edx
je 0x41ab0f
mov eax, esi
mov cl, byte [eax]
mov byte [eax + ebp], cl
add eax, edi
test cl, cl
jne 0x41a9e1
lea eax, [esp + 0x70]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a9f1
mov ecx, dword [str..wip]
mov dl, byte [0x4c6ef0]
mov dword [eax], ecx
mov byte [eax + 4], dl
push ebx
push ecx
lea eax, [esp + 0x78]
call fcn.0043ac90
add esp, 4
push eax
mov eax, dword [esp + 0x1c]
add eax, 0x7e5
push 1
push eax
lea edi, [esp + 0x80]
call fcn.00401410
add esp, 0x10
test eax, eax
je 0x4197b7
mov eax, esi
mov edi, edi
mov cl, byte [eax]
mov byte [eax + ebp], cl
inc eax
test cl, cl
jne 0x41aa40
lea eax, [esp + 0x70]
dec eax
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41aa50
mov ecx, dword [str..msk]
mov dl, byte [0x4c6ef8]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x70]
call fcn.0043ac90
push 1
mov edi, eax
push 1
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x28]
push ecx
push edi
lea eax, [esp + 0x84]
call fcn.004666e0
add esp, 0x14
test eax, eax
je 0x4197b7
cmp dword [esp + 0x34], 8
jne 0x4197b7
mov eax, dword [esp + 0x20]
imul eax, dword [esp + 0x1c]
add eax, 7
push eax
call fcn.004836a3
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4197b7
test bl, 7
je 0x41aad7
mov edx, ebx
shr edx, 3
lea esi, [edx*8 + 8]
jmp 0x41aad9
mov esi, ebx
push 0
push 1
lea eax, [esp + 0x24]
push esi
push eax
lea eax, [esp + 0x80]
mov edx, edi
call fcn.00466950
add esp, 0x10
test eax, eax
je 0x41a48c
mov eax, dword [esp + 0x18]
mov dword [eax - 8], ebx
mov dword [eax - 4], esi
xor ebx, ebx
mov esi, eax
mov edi, 1
add dword [esp + 0x14], edi
add esi, 0x2c
sub ebp, 0x2c
cmp esi, 0x6da3b4
mov dword [esp + 0x18], esi
jl 0x41a9c2
push 0x48
push ebx
push 0x4f7768
call fcn.00487bc0
mov ecx, dword [0x5f9fe0]
xor eax, eax
add esp, 0xc
mov dword [0x4f3e90], eax
mov dword [0x4f3e94], eax
mov dword [0x4f3e98], eax
mov dword [0x4f3e9c], eax
mov dword [0x9130c8], ebx
cmp dword [0x4f9e6c], ebx
jne 0x41ab6f
cmp ecx, ebx
jne 0x41ab73
mov dword [0x4f9e28], ebx
jmp 0x41ab88
cmp ecx, ebx
je 0x41ab88
mov eax, dword [0x6da4c4]
cmp eax, edi
jg 0x41ab82
jne 0x41ab88
cmp ecx, ebx
je 0x41ab88
mov dword [0x4f9e28], edi
push ebx
mov dword [0x4f5c94], ebx
call fcn.00416d60
mov esi, 0x1f4
add esp, 4
mov dword [0x5ff4a8], edi
mov dword [0x5ff4ac], ebx
mov dword [0x5ff4b0], 0x2b
mov dword [0x5ff4c0], esi
call dword [0x4b939c]
cmp dword [0x5ff4b0], 0x2f
mov dword [0x5ff4bc], eax
jne 0x41abfc
mov ecx, dword [0x904a44]
mov edx, dword [0x5ff4b8]
mov eax, dword [edx*4 + 0x902a38]
push ecx
mov ecx, dword [0x5ff4b4]
mov edx, dword [ecx*4 + 0x902a38]
push eax
mov eax, dword [0x5ff4c0]
push edx
push eax
push 0x2f
call fcn.0043eb70
cmp dword [0x9133f4], ebx
je 0x41ac36
cmp dword [0x913404], ebx
jne 0x41ac36
mov dword [0x913418], ebx
mov dword [0x913408], ebx
mov dword [0x91340c], esi
mov dword [0x913414], ebx
mov dword [0x913400], ebx
mov dword [0x913410], edi
mov dword [0x913404], edi
cmp dword [0x4f9e6c], ebx
je 0x41ac4a
mov dword [0x4f9e28], edi
mov dword [0x4f9e30], ebx
mov ecx, edi
call fcn.00401700
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8d7c
ret