Function at 0x4135a0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d4
mov eax, dword [0x64916c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
movzx eax, word [eax]
push edi
push eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
call fcn.00533380
mov edi, eax
add esp, 4
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edi
test edi, edi
je 0x419f41
mov eax, dword [edi + 0x90]
mov ecx, dword [0x64ad70]
mov edx, dword [edi + 0x88]
push esi
mov esi, dword [edi + 0x8c]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov eax, esi
and eax, 0x2000000
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x413649
mov ecx, esi
and ecx, 0xfde
or dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 1
push 4
push edi
call fcn.00533900
add esp, 8
test eax, eax
jne 0x413668
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x82000
je 0x413952
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x80000
jne 0x419f40
movzx eax, word [edi + 0x160]
test eax, eax
je 0x419f40
push eax
call fcn.0052c1e0
add esp, 4
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x419f40
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4136a3
sub eax, edx
mov edx, dword [edi + 0x7c]
push edx
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5e92
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + esi]
push 0x5c0714
push eax
call dword [fcn.005c02cc]
add esp, 0x10
cmp byte [ebx], 0
je 0x4136f5
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4136e3
mov cx, word [0x5c05a8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413700
sub eax, edx
push 0x5dc3
mov esi, eax
call fcn.00531d80
push eax
lea edx, [ebx + esi]
push 0x5c097c
push edx
call dword [fcn.005c02cc]
add esp, 0x10
cmp byte [ebx], 0
je 0x413741
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413730
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413746
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [esi + 0x15d1]
push ecx
sub eax, edx
push 0x5e94
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x5c0734
push edx
call dword [fcn.005c02cc]
movsx ecx, byte [esi + 0x15d7]
add esp, 0x10
cmp ecx, 1
jle 0x4137dc
cmp byte [ebx], 0
je 0x4137a4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413793
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edi, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4137b0
push ecx
sub eax, edi
push 0x5f38
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c0734
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
cmp byte [ebx], 0
je 0x4137f6
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4137e4
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, ebx
lea edx, [eax + 1]
jmp 0x413800
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413800
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x168]
push eax
push 0x5dc6
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c0734
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413836
mov dx, word [0x5c05a8]
mov eax, ebx
mov word [edi], dx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413850
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x16a]
push eax
push 0x5dc7
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c0734
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413886
mov dx, word [0x5c05a8]
mov eax, ebx
mov word [edi], dx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4138a0
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x170]
push eax
push 0x5dca
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c0734
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4138d6
mov dx, word [0x5c05a8]
mov eax, ebx
mov word [edi], dx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4138f0
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x16e]
push eax
push 0x5dc9
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c0734
push ecx
call dword [fcn.005c02cc]
lea edx, reloc.MSVCRT.dll_strncpy
push edx
push 0
push ebx
call fcn.0040a3d0
add esi, 0x17f
push esi
push 1
push ebx
call fcn.0040a3d0
add esp, 0x28
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0059ea5e
mov esp, ebp
pop ebp
ret
push 0xea
lea eax, reloc.MSVCRT.dll_strncpy
push 0
push eax
call fcn.0059ea70
add esp, 0xc
test byte [0x6bb464], 1
je 0x4139d8
mov eax, dword [0x64ada8]
dec eax
jne 0x4139d8
cmp byte [ebx], al
je 0x413992
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413980
mov cx, word [0x5c05a8]
mov word [edi], cx
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413995
mov dx, word [0x5c05a8]
mov eax, ebx
mov word [edi], dx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4139b0
sub eax, edx
push 0x5348
mov edi, eax
call fcn.00531d80
push eax
lea eax, [ebx + edi]
push 0x5c0974
push eax
call dword [fcn.005c02cc]
add esp, 0x10
mov eax, esi
and eax, 0x800000
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x413bd5
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
test eax, 0x200000
je 0x413a0c
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5269
test al, 1
je 0x413a1a
mov esi, 0x5ea9
jmp 0x413b2c
test eax, 0x8000000
je 0x413a2b
mov esi, 0x5dcf
jmp 0x413b2c
test eax, 0x1000000
je 0x413a3c
mov esi, 0x5dd0
jmp 0x413b2c
test eax, 0x800000
je 0x413a4d
mov esi, 0x5dd1
jmp 0x413b2c
test eax, 0x2000000
je 0x413a5e
mov esi, 0x5dd2
jmp 0x413b2c
test eax, 0x4000000
je 0x413a6f
mov esi, 0x5dd3
jmp 0x413b2c
test eax, 0x4000
je 0x413a80
mov esi, 0x4c5fbb
jmp 0x413b2c
test eax, 0x2000
je 0x413a91
mov esi, 0x4c5fba
jmp 0x413b2c
test eax, 0x400000
je 0x413aa2
mov esi, 0x5dd4
jmp 0x413b2c
test al, 0x40
je 0x413aad
mov esi, 0x5e45
jmp 0x413b2c
test al, al
jns 0x413ab8
mov esi, 0x5e44
jmp 0x413b2c
test al, 2
je 0x413ac3
mov esi, 0x4f5d
jmp 0x413b2c
test al, 4
je 0x413ace
mov esi, 0x4f5c
jmp 0x413b2c
test al, 8
je 0x413ad9
mov esi, 0x4f5f
jmp 0x413b2c
test al, 0x10
je 0x413ae4
mov esi, 0x4f63
jmp 0x413b2c
test eax, 0x100
je 0x413af2
mov esi, 0x4f64
jmp 0x413b2c
test eax, 0x200
je 0x413b00
mov esi, 0x4f60
jmp 0x413b2c
test eax, 0x400
je 0x413b0e
mov esi, 0x4f5e
jmp 0x413b2c
test eax, 0x800
je 0x413b1c
mov esi, 0x4f65
jmp 0x413b2c
test eax, 0x100000
je 0x413bd5
mov esi, 0x4c4c92
cmp byte [ebx], 0
je 0x413b46
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413b34
mov cx, word [0x5c05a8]
mov word [edi], cx
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x413ba0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413b54
sub eax, edx
push esi
mov edi, eax
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push edx
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c096c
push eax
call dword [fcn.005c02cc]
add esp, 0x14
jmp 0x413bd5
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413ba0
sub eax, edx
push esi
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c05f4
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, ecx
and eax, 1
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x413dbb
cmp byte [ebx], 0
je 0x413c06
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413bf4
mov dx, word [0x5c05a8]
mov word [edi], dx
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x413c60
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413c14
sub eax, edx
push 0x4f61
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5269
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + esi]
push 0x5c0960
push eax
call dword [fcn.005c02cc]
add esp, 0x14
jmp 0x413c99
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413c60
sub eax, edx
push 0x4f61
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push 0x5c05f4
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413ca0
mov dx, word [0x5c05a8]
push 0x5dce
mov word [edi], dx
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413cc1
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x413cd0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, 2
test eax, 0x8000000
je 0x413d02
push ebx
xor esi, esi
push 0x5dcf
jmp 0x413d56
test eax, 0x1000000
je 0x413d16
push ebx
mov esi, 1
push 0x5dd0
jmp 0x413d56
test eax, 0x800000
je 0x413d25
push ebx
push 0x5dd1
jmp 0x413d56
test eax, 0x2000000
je 0x413d34
push ebx
push 0x5dd2
jmp 0x413d56
test eax, 0x4000000
je 0x413d45
push ebx
xor esi, esi
push 0x5dd3
jmp 0x413d56
test eax, 0x10400000
je 0x414589
push ebx
push 0x5dd4
push 0
call fcn.00408220
add esp, 0xc
cmp byte [ebx], 0
je 0x413d79
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413d68
mov ax, word [0x5c05a8]
mov word [edi], ax
add esi, 0x5e50
push esi
call fcn.00531d80
add esp, 4
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413d90
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x413da0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x414589
test cl, 0xc0
je 0x413f02
cmp byte [ebx], 0
je 0x413de2
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413dd0
mov cx, word [0x5c05a8]
mov word [edi], cx
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x413e40
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413df0
sub eax, edx
push 0x4f62
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5269
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + esi]
push 0x5c0960
push edx
call dword [fcn.005c02cc]
add esp, 0x14
jmp 0x413e79
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413e40
sub eax, edx
push 0x4f62
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + esi]
push 0x5c05f4
push eax
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413e80
mov cx, word [0x5c05a8]
push 0x5e43
mov word [edi], cx
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413ea1
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x413eb0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov al, byte [ebp - 0x1b4]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test al, al
jns 0x413ee5
push ebx
push 0x5e44
push 0
call fcn.00408220
add esp, 0xc
jmp 0x414589
test al, 0x40
je 0x414589
push ebx
push 0x5e45
push 0
call fcn.00408220
add esp, 0xc
jmp 0x414589
test ecx, 0x1000
je 0x413f14
mov esi, 0x4f62
jmp 0x413fbd
test cl, 2
je 0x413f23
mov esi, 0x4f5d
jmp 0x413fbd
test cl, 4
je 0x413f32
mov esi, 0x4f5c
jmp 0x413fbd
test cl, 8
je 0x413f3e
mov esi, 0x4f5f
jmp 0x413fbd
test cl, 0x10
je 0x413f5b
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
neg esi
sbb esi, esi
and esi, 0x307
add esi, 0x4f63
jmp 0x413fbd
test ecx, 0x100
je 0x413f6a
mov esi, 0x4f64
jmp 0x413fbd
test ecx, 0x200
je 0x413f79
mov esi, 0x4f60
jmp 0x413fbd
test ecx, 0x400
je 0x413f88
mov esi, 0x4f5e
jmp 0x413fbd
test ecx, 0x800
je 0x413f97
mov esi, 0x4f65
jmp 0x413fbd
mov edi, dword [ebp - reloc.MSVCRT.dll_strncpy]
test edi, 0x4000
je 0x413fac
mov esi, 0x4c5fbb
jmp 0x413fbd
test edi, 0x2000
je 0x414061
mov esi, 0x4c5fba
cmp byte [ebx], 0
je 0x413fd7
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413fc5
mov dx, word [0x5c05a8]
mov word [edi], dx
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x414030
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x413fe5
sub eax, edx
push esi
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5269
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c0960
push eax
call dword [fcn.005c02cc]
add esp, 0x14
jmp 0x414589
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414030
sub eax, edx
push esi
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
push 0x5c05f4
lea ecx, [ebx + edi]
push ecx
jmp 0x414580
test ecx, 0x20000
je 0x414230
cmp byte [ebx], 0
je 0x414087
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414075
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0
call fcn.0059fa71
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
cmp eax, dword [esi + 0x23]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edx
lea eax, [ebx - 1]
jbe 0x4140c0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4140a5
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
jmp 0x4140d8
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4140c0
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
mov eax, dword [esi + 0x23]
test eax, eax
jne 0x41412d
lea ecx, reloc.MSVCRT.dll_strncpy
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
lea edx, [ebp - 0xa8]
dec eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edx
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0x98], eax
jmp 0x41413c
push eax
call fcn.004a3270
add esp, 4
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
push 0x5e7a
call fcn.00531d80
add esp, 4
mov esi, eax
jmp 0x414150
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414150
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x414160
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea esi, [eax + 1]
jmp 0x414180
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414180
sub eax, esi
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
push ecx
mov ecx, dword [eax + 0xc]
push edx
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
push ecx
inc edx
push edx
add eax, 0x76c
push eax
push 0x5e73
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
add esp, 0x1c
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4141d0
mov dx, word [0x5c0630]
mov word [eax], dx
mov cl, byte [0x5c0632]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [eax + 2], cl
movzx eax, word [edx + 0x99]
push 3
push eax
push ebx
push 0
push 0
call fcn.0040e390
add esp, 0x14
lea eax, [ebx - 1]
jmp 0x414210
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414210
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
jmp 0x414589
test ecx, 0x100000
je 0x41444c
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx esi, word [eax + 0x25]
test esi, esi
je 0x41429b
mov edx, 0x13e2
cmp word [eax], dx
je 0x41429b
cmp byte [ebx], 0
je 0x414277
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414260
mov ax, word [0x5c05a8]
mov word [edi], ax
mov edi, dword [ebp - reloc.MSVCRT.dll_strncpy]
push esi
push 0x5e83
call fcn.00531d80
add esp, 4
push eax
push 0x5c0734
push ebx
call dword [fcn.005c02cc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x10
cmp byte [ebx], 0
je 0x4142bb
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4142a3
mov dx, word [0x5c05a8]
mov word [edi], dx
mov edi, dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov edi, edi
mov dl, byte [eax + 1]
inc eax
test dl, dl
jne 0x4142c0
mov dx, word [0x5c0634]
mov word [eax], dx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
xor eax, eax
test ecx, ecx
jns 0x4142e9
push ebx
push 0x5dd5
jmp 0x4142f7
test edi, 0x20000000
je 0x414307
push ebx
push 0x5f19
push 0
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test ecx, 0x40000000
je 0x41431e
push ebx
push 0x5dd6
push eax
call fcn.00408220
add esp, 0xc
push ebx
push 0x5e82
push eax
call fcn.00408220
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414330
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp byte [eax + 0x27], 2
jne 0x4143f7
cmp byte [ebx], 0
je 0x414375
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414363
mov cx, word [0x5c05a8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414380
sub eax, edx
push esi
push 0x5e84
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x5c0708
push edx
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4143b0
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4143c6
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
push 0x20
add ecx, 0x28
push ecx
add ebx, eax
push ebx
call fcn.0053e2f0
add esp, 0xc
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0059ea5e
mov esp, ebp
pop ebp
ret
push 0x1000
call fcn.00420f70
add esp, 4
test eax, eax
je 0x419f40
cmp byte [ebx], 0
je 0x414426
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414414
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0x20
add eax, 0x28
push eax
push ebx
call fcn.0053e2f0
add esp, 0xc
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0059ea5e
mov esp, ebp
pop ebp
ret
test edi, 0x10000000
je 0x4144cd
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x4144cd
cmp byte [ebx], 0
je 0x414477
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414465
mov cx, word [0x5c05a8]
mov word [edi], cx
lea eax, [ebx - 1]
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414480
mov dx, word [0x5c0630]
mov word [eax], dx
mov cl, byte [0x5c0632]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [eax + 2], cl
movzx eax, word [edx + 0x99]
push 3
push eax
push ebx
push 0
push 0
call fcn.0040e390
add esp, 0x14
lea eax, [ebx - 1]
jmp 0x4144c0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4144c0
jmp 0x414218
test edi, 0x100000
je 0x41458f
cmp byte [ebx], 0
je 0x4144f2
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4144e1
mov ax, word [0x5c05a8]
mov word [edi], ax
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x414550
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414500
sub eax, edx
push 0x4c4c92
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5269
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push 0x5c0960
push ecx
call dword [fcn.005c02cc]
add esp, 0x14
jmp 0x414589
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414550
sub eax, edx
push 0x4c4c92
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5e6d
call fcn.00531d80
add esp, 4
push eax
push 0x5c05f4
lea edx, [ebx + esi]
push edx
call dword [fcn.005c02cc]
add esp, 0x10
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, word [eax + 0xc]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x41472c
cmp byte [ebx], 0
je 0x4145c2
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4145b0
mov cx, word [0x5c05a8]
mov word [edi], cx
push 0x5dc0
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4145d1
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4145e0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea esi, [eax + 1]
jmp 0x414600
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414600
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
sub eax, esi
add eax, ebx
push 0x5c0624
push eax
call dword [fcn.005c02cc]
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414624
mov cx, word [0x5c0710]
mov word [eax], cx
mov dl, byte [0x5c0712]
push 0x5dd7
mov byte [eax + 2], dl
call fcn.00531d80
add esp, 4
mov esi, eax
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414650
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x414660
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movzx ecx, word [eax + 0x9d]
imul ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 1
push 0x64
push ecx
call fcn.004a34b0
mov eax, ebx
add esp, 0xc
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41469c
sub eax, esi
push 2
lea edx, [ebx + eax]
push edx
sub esp, 8
fstp qword [esp]
call fcn.004a3510
add esp, 0x10
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 1
jle 0x414726
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4146c5
mov ax, word [0x5c095c]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [edi], ax
movzx edx, word [ecx + 0x9d]
push 1
push 0x64
push edx
call fcn.004a34b0
mov eax, ebx
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4146f5
sub eax, edx
push 2
add eax, ebx
push eax
sub esp, 8
fstp qword [esp]
call fcn.004a3510
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414714
mov cx, word [0x5c05b8]
mov word [edi], cx
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
test ecx, 0x20000000
je 0x414e09
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, word [esi + 0x160]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edi
test edi, edi
je case.0x415cba.65484
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x200000
jne case.0x415cba.65484
push 0
push edi
call fcn.00534e60
add esp, 8
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je case.0x415cba.65484
cmp edi, 0xffff
jne 0x4147ef
cmp byte [ebx], 0
je 0x4147a8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414796
mov dx, word [0x5c05a8]
mov word [edi], dx
lea eax, [ebx - 1]
jmp 0x4147b0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4147b0
mov cx, word [0x5c05ec]
push 0
push 0
push ebx
mov word [eax], cx
mov dl, byte [0x5c05ee]
push 0x5e07
push 1
mov byte [eax + 2], dl
call fcn.004083c0
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4147e2
jmp 0x4170e8
movzx eax, word [esi + 0x162]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
jle 0x414b18
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push esi
push eax
call fcn.0040aa80
movzx eax, word [esi + 0x16c]
add esp, 0xc
test ax, ax
je 0x4148c3
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp word [ecx + 0x3c1], ax
jae 0x414852
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414837
mov dx, word [0x5c0634]
mov word [eax], dx
mov cl, byte [0x5c0636]
mov byte [eax + 2], cl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414857
sub eax, edx
movzx edx, word [esi + 0x16c]
push edx
push 0x5f2f
mov edi, eax
call fcn.00531d80
mov esi, dword [fcn.005c02cc]
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c0734
push eax
call esi
add esp, 0x10
lea eax, [ebx - 1]
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414890
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4148b0
mov ax, word [0x5c05a8]
mov word [edi], ax
jmp 0x4148c9
mov esi, dword [fcn.005c02cc]
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4148d0
mov cx, word [0x5c05a8]
mov word [edi], cx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4148e5
mov dx, word [0x5c05ec]
mov word [eax], dx
mov cl, byte [0x5c05ee]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [eax + 2], cl
mov eax, dword [edx + 8]
cmp eax, 2
jne 0x41495f
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414913
sub eax, edx
lea edi, [ebx + eax]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
push 0x5f2d
call fcn.00531d80
add esp, 4
push eax
push edi
call esi
push 0x4e33
call fcn.00531d80
add esp, 0x10
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414946
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x414952
jmp 0x4149e8
cmp eax, 1
jne 0x4149bb
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414970
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ecx
sub eax, edx
push 0x5f2d
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call esi
push 0x4e34
call fcn.00531d80
add esp, 0x10
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4149a5
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4149b1
jmp 0x4149e8
cmp eax, 4
jne 0x4149fc
push 0x5f32
call fcn.00531d80
add esp, 4
mov esi, eax
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4149d0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4149e0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [fcn.005c02cc]
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414a01
sub eax, edx
mov edi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, dword [eax + 4]
push ecx
call fcn.00531d80
push eax
lea edx, [ebx + edi]
push 0x5c0958
push edx
call esi
add esp, 0x10
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414a30
mov ax, word [0x5c05a8]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [edi], ax
cmp dword [ecx + 8], 4
mov eax, ebx
lea edx, [eax + 1]
jne 0x414ab7
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414a52
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
push 0x5f31
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c06d0
push eax
call esi
add esp, 0x10
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414a83
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414aa1
mov ax, word [0x5c05a8]
mov word [edi], ax
jmp case.0x415cba.65484
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414ab7
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
dec ecx
push ecx
sub eax, edx
push 0x5f2e
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call esi
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414ae4
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414b02
mov ax, word [0x5c05a8]
mov word [edi], ax
jmp case.0x415cba.65484
cmp byte [ebx], 0
je 0x414b38
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414b20
mov cx, word [0x5c05a8]
mov word [edi], cx
mov edi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, byte [edx + 0x338]
push edi
push eax
call fcn.005345c0
mov esi, eax
add esp, 8
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
test esi, esi
je 0x414cd5
cmp dword [esi + 4], 0
je 0x414cd5
cmp edi, 0x7d0
jge 0x414bd1
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp byte [edi + ecx + 0x202a], 0
je 0x414bd1
push 0x5298
call fcn.00531d80
add esp, 4
test eax, eax
je 0x414bd1
cmp byte [eax], 0
je 0x414bd1
mov ecx, ebx
lea edi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x414ba0
push eax
sub ecx, edi
lea edx, [ebx + ecx]
push 0x5c0950
push edx
call dword [fcn.005c02cc]
add esp, 0xc
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414bc0
mov ax, word [0x5c05a8]
mov word [edi], ax
mov edi, dword [esi + 8]
test edi, edi
jle 0x414c6c
cmp edi, 3
jge 0x414c6c
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, byte [ecx + 0x12ca]
mov eax, ebx
cmp edx, edi
lea edx, [eax + 1]
jl 0x414c25
jmp 0x414c00
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414c00
sub eax, edx
push edi
push 0x4c4bb8
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5c06d0
lea eax, [ebx + esi]
push eax
jmp 0x414c48
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414c25
sub eax, edx
push edi
push 0x4c4bb8
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5c0944
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414c54
mov dx, word [0x5c05a8]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [edi], dx
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x3cf]
mov edx, dword [esi + 4]
mov eax, ebx
lea esi, [eax + 1]
cmp ecx, edx
jl 0x414cb0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414c85
push edx
sub eax, esi
push 0x5e1d
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5c06d0
lea edx, [ebx + edi]
push edx
jmp 0x414cff
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414cb0
push edx
sub eax, esi
push 0x5e1d
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5c0944
lea eax, [ebx + edi]
push eax
jmp 0x414cff
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414ce0
sub eax, edx
push 0x5e1e
mov esi, eax
call fcn.00531d80
push eax
push 0x5c0708
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
cmp byte [ebx], 0
je 0x414d22
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414d10
mov dx, word [0x5c05a8]
mov word [edi], dx
mov esi, 1
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
push esi
call fcn.005345c0
add esp, 8
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x414d64
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x414d50
mov cx, word [0x5c0580]
mov word [edi], cx
jmp 0x414d6e
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 1
test eax, eax
je 0x414db4
mov eax, dword [eax + 4]
test eax, eax
je 0x414db4
mov ecx, ebx
lea edi, [ecx + 1]
mov edi, edi
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x414d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
mov eax, dword [edx + 8]
push eax
sub ecx, edi
push esi
mov edi, ecx
call fcn.00430710
add esp, 8
push eax
lea ecx, [ebx + edi]
push 0x5c093c
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
jmp 0x414de6
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414dc0
sub eax, edx
push 0
push esi
mov edi, eax
call fcn.00430710
push eax
lea edx, [ebx + edi]
push 0x5c0934
push edx
call dword [fcn.005c02cc]
add esp, 0x14
inc esi
cmp esi, 6
jle 0x414d27
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414df3
mov ax, word [0x5c05b8]
mov word [edi], ax
jmp case.0x415cba.65484
test ecx, 0x4000
je 0x415421
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, word [ecx + 0x160]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je case.0x415cba.65484
push eax
call fcn.0052c2d0
add esp, 4
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je case.0x415cba.65484
cmp byte [ebx], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 1
je 0x414e72
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414e60
mov dx, word [0x5c05a8]
mov word [edi], dx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414e75
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414e95
sub eax, edx
mov edi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, dword [eax + 4]
push ecx
call fcn.00531d80
add esp, 4
push eax
push 0x5ea7
call fcn.00531d80
mov esi, dword [fcn.005c02cc]
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call esi
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x414ed3
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp word [eax + 0x7e], 0
je 0x414f49
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414f00
mov cx, word [0x5c05a8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414f17
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edi, eax
movzx eax, word [edx + 0x7e]
push eax
push 0x5357
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c0928
push ecx
call esi
add esp, 0x10
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp word [edx + 0x7c], 0
je 0x414fa8
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414f60
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414f76
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
movzx edx, word [ecx + 0x7c]
push edx
push 0x5f24
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c0928
push eax
call esi
add esp, 0x10
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add ecx, 0xee6
push ecx
push edx
call fcn.00522b40
add esp, 8
test eax, eax
je 0x415018
push 0x5299
call fcn.00531d80
add esp, 4
test eax, eax
je 0x415018
cmp byte [eax], 0
je 0x415018
cmp byte [ebx], 0
je 0x414ff8
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x414fe6
mov cx, word [0x5c05a8]
mov word [edi], cx
mov ecx, ebx
lea edi, [ecx + 1]
lea ecx, [ecx]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x415000
push eax
sub ecx, edi
lea edx, [ebx + ecx]
push 0x5c0950
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, byte [eax + 0xde]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x415231
mov ecx, eax
and ecx, 0x3f
cmp cl, 0x3f
je 0x415231
cmp byte [ebx], 0
je 0x415062
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415050
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
movzx eax, byte [eax + 0x338]
test eax, eax
je 0x4150bb
lea ecx, [eax - 1]
mov edx, 1
shl edx, cl
test dword [ebp - reloc.MSVCRT.dll_strncpy], edx
jne 0x4150bb
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 1
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4150a0
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
push 0x5dcc
call fcn.00531d80
add esp, 4
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4150d0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4150e0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
test byte [ebp - 0x1a0], 1
je 0x415126
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, byte [eax + 0xe0]
push ebx
push ecx
push 1
call fcn.00430660
add esp, 8
push eax
push esi
call fcn.00408220
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 2
je 0x415154
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, byte [edx + 0xe0]
push ebx
push eax
push 2
call fcn.00430660
add esp, 8
push eax
push esi
call fcn.00408220
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 4
je 0x415182
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, byte [ecx + 0xe0]
push ebx
push edx
push 3
call fcn.00430660
add esp, 8
push eax
push esi
call fcn.00408220
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 8
je 0x4151b0
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, byte [eax + 0xe0]
push ebx
push ecx
push 4
call fcn.00430660
add esp, 8
push eax
push esi
call fcn.00408220
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 0x10
je 0x4151de
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, byte [edx + 0xe0]
push ebx
push eax
push 5
call fcn.00430660
add esp, 8
push eax
push esi
call fcn.00408220
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 0x20
je 0x41520a
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, byte [ecx + 0xe0]
push ebx
push edx
push 6
call fcn.00430660
add esp, 8
push eax
push esi
call fcn.00408220
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x415231
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415216
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp word [eax + 0xdc], 1
ja 0x41529f
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp byte [ecx + 0x47], 0
jne 0x41529f
cmp byte [eax + 0xdf], 0
jne 0x41529f
cmp byte [eax + 0xe0], 0
jne 0x41529f
cmp word [eax + 0xe1], 0
jne 0x41529f
cmp word [eax + 0xe3], 0
jne 0x41529f
cmp word [eax + 0xe5], 0
jne 0x41529f
cmp word [eax + 0xe7], 0
jne 0x41529f
cmp word [eax + 0xe9], 0
jne 0x41529f
cmp word [eax + 0xeb], 0
je 0x415bf4
cmp byte [ebx], 0
je 0x4152b9
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4152a7
mov dx, word [0x5c05a8]
mov word [edi], dx
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4152c0
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4152e0
sub eax, edx
push 0x5dc2
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415308
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x415314
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415330
mov cx, word [0x5c0630]
mov edi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [edi + 0xdc]
movsx eax, byte [eax + 0x47]
add eax, ecx
xor esi, esi
mov ecx, 1
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
cmp eax, ecx
jge 0x415381
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov al, byte [edi + 0xe0]
test al, al
je 0x41551b
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp byte [edx + 0x12ca], al
jae 0x4153c1
add dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4153a6
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
cmp byte [edi + 0xe0], 3
push ebx
jae 0x4154d6
push 0x4c4bb7
push 0
call fcn.00408220
mov esi, eax
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
lea edx, [eax + 1]
je 0x4154b0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4153f8
sub eax, edx
mov ecx, edi
movzx edx, byte [ecx + 0xe0]
push edx
add eax, ebx
push 0x5c0628
push eax
call dword [fcn.005c02cc]
add esp, 0xc
jmp 0x41551b
test ecx, 0x40000
jne case.0x415cba.65484
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x100000
je 0x415018
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp word [edx + 0xeb], 0
je case.0x415cba.65484
cmp byte [ebx], 0
je 0x415471
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415460
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415476
movzx ecx, word [edx + 0xeb]
push ecx
sub eax, esi
push 0x5e94
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + esi]
push 0x5c0734
push edx
call dword [fcn.005c02cc]
add esp, 0x10
jmp case.0x415cba.65484
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4154b0
sub eax, edx
mov ecx, edi
movzx edx, byte [ecx + 0xe0]
push edx
add eax, ebx
push 0x5c0624
push eax
call dword [fcn.005c02cc]
add esp, 0xc
jmp 0x41551b
push 0x4c4c74
push 0
call fcn.00408220
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov esi, eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
je 0x41551b
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415500
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, edi
movzx eax, word [eax + 0xdc]
cmp eax, 1
ja 0x415539
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp byte [ecx + 0x47], 0
je 0x415652
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [ecx + 0x49]
movsx ecx, byte [ecx + 0x47]
sub ecx, edx
add ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [eax + 0x3cf]
cmp edx, ecx
jge 0x415580
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415565
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
push ebx
push 0x5dc3
push esi
call fcn.00408220
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x4155bc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4155a1
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movsx eax, byte [eax + 0x47]
test eax, eax
mov eax, ebx
lea edx, [eax + 1]
jns 0x4155fe
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4155d0
sub eax, edx
mov ecx, edi
movzx edx, word [ecx + 0xdc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
push ecx
lea edx, [ebx + eax]
push 0x5c091c
push edx
call dword [fcn.005c02cc]
add esp, 0x10
jmp 0x415652
jle 0x415630
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415600
sub eax, edx
mov ecx, edi
movzx edx, word [ecx + 0xdc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
push ecx
lea edx, [ebx + eax]
push 0x5c0910
push edx
call dword [fcn.005c02cc]
add esp, 0x10
jmp 0x415652
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415630
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ecx
sub eax, edx
lea edx, [ebx + eax]
push 0x5c0624
push edx
call dword [fcn.005c02cc]
add esp, 0xc
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [eax + 0x49]
test dx, dx
je 0x415686
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415666
mov esi, dword [fcn.005c02cc]
push edx
sub eax, edi
lea edx, [ebx + eax]
push 0x5c0608
push edx
call esi
add esp, 0xc
jmp 0x41568c
mov esi, dword [fcn.005c02cc]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, word [eax + 0xe1]
test edi, edi
je 0x415738
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x4a1]
movzx edx, word [eax + 0x495]
add ecx, edx
cmp ecx, edi
jge 0x4156df
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4156c4
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dc6
push eax
call fcn.00408220
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x415720
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415708
push edi
sub eax, edx
push 0x5c0628
lea ecx, [ebx + eax]
push ecx
jmp 0x415733
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415720
push edi
sub eax, edx
push 0x5c0624
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, word [eax + 0xe3]
test edi, edi
je 0x4157fc
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add ecx, 0x32c
push ecx
call fcn.00521a20
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [ecx + 0x4a3]
movzx ecx, word [ecx + 0x497]
add edx, ecx
sub edx, eax
add esp, 4
cmp edx, edi
jge 0x4157a2
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415787
mov dx, word [0x5c0634]
mov word [eax], dx
mov cl, byte [0x5c0636]
mov byte [eax + 2], cl
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dc7
push edx
call fcn.00408220
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x4157e4
jmp 0x4157d0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4157d0
push edi
sub eax, edx
push 0x5c0628
add eax, ebx
push eax
jmp 0x4157f7
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4157e4
push edi
sub eax, edx
push 0x5c0624
lea ecx, [ebx + eax]
push ecx
call esi
add esp, 0xc
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, word [edx + 0xe5]
test edi, edi
je 0x4158a8
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x4a5]
movzx edx, word [eax + 0x499]
add ecx, edx
cmp ecx, edi
jge 0x41584f
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415834
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dc8
push eax
call fcn.00408220
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x415890
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415878
push edi
sub eax, edx
push 0x5c0628
lea ecx, [ebx + eax]
push ecx
jmp 0x4158a3
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415890
push edi
sub eax, edx
push 0x5c0624
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, word [eax + 0xe7]
test edi, edi
je 0x415958
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x4a7]
movzx edx, word [eax + 0x49b]
add ecx, edx
cmp ecx, edi
jge 0x4158fb
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4158e0
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dc9
push eax
call fcn.00408220
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x415940
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415924
push edi
sub eax, edx
push 0x5c0628
lea ecx, [ebx + eax]
push ecx
jmp 0x415953
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415940
push edi
sub eax, edx
push 0x5c0624
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, word [eax + 0xe9]
test edi, edi
je 0x415a08
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x4a9]
movzx edx, word [eax + 0x49d]
add ecx, edx
cmp ecx, edi
jge 0x4159ab
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415990
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dca
push eax
call fcn.00408220
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x4159f0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4159d4
push edi
sub eax, edx
push 0x5c0628
lea ecx, [ebx + eax]
push ecx
jmp 0x415a03
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4159f0
push edi
sub eax, edx
push 0x5c0624
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, word [eax + 0xeb]
test edi, edi
je 0x415ab8
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x4ab]
movzx edx, word [eax + 0x49f]
add ecx, edx
cmp ecx, edi
jge 0x415a5b
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415a40
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dcb
push eax
call fcn.00408220
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x415aa0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415a84
push edi
sub eax, edx
push 0x5c0628
lea ecx, [ebx + eax]
push ecx
jmp 0x415ab3
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415aa0
push edi
sub eax, edx
push 0x5c0624
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, byte [eax + 0xdf]
test eax, eax
je 0x415be0
test al, 1
je 0x415b4e
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
test byte [ecx + 0x369], al
je 0x415afd
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dc5
push edx
call fcn.00408220
add esp, 0xc
jmp 0x415be0
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415b00
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
je 0x415b38
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415b27
mov ax, word [0x5c0580]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415b40
push 0x5dc5
jmp 0x415bc2
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
test byte [edx + 0x369], al
je 0x415b73
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
push 0x5dc4
push eax
call fcn.00408220
add esp, 0xc
jmp 0x415be0
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415b76
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
je 0x415bb1
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415ba0
mov ax, word [0x5c0580]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415bb6
push 0x5dc4
sub eax, edx
mov edi, eax
call fcn.00531d80
push eax
lea ecx, [ebx + edi]
push 0x5c0600
push ecx
call esi
add esp, 0x10
inc dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x415bf4
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [ebx + edx - 1], 0x32
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne case.0x415cba.65484
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx esi, word [eax + 0x160]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
test esi, esi
je case.0x415cba.65484
cmp byte [ebx], 0
je 0x415c36
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415c24
mov cx, word [0x5c05a8]
mov word [edi], cx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [edx + reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
jne 0x415c56
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0xe10
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and eax, 0x200000
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
lea eax, [ebx - 1]
je 0x415c90
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415c70
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
jmp 0x415ca8
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x415c90
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
lea eax, reloc.MSVCRT.dll_strncpy
cmp eax, 0x32
ja case.0x415cba.65485
jmp dword [eax*4 + 0x419f54]
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415cc6
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5e54
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415d10
mov ax, word [0x5c05a8]
push 0x5e74
mov word [edi], ax
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415d30
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x415d40
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x415d60
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415d60
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.004a3130
jmp 0x416ed1
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415d88
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5e55
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415dd0
mov ax, word [0x5c05a8]
push 0x5e74
mov word [edi], ax
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415df0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x415e00
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x415e20
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415e20
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.004a3130
jmp 0x416ed1
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415e48
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5394
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415e90
mov ax, word [0x5c05a8]
push 0x5e74
mov word [edi], ax
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415eb0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x415ec0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x415ee0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415ee0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
add eax, ebx
push eax
push 0x5e75
push ecx
call fcn.004a3130
jmp 0x416ed1
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415f07
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov esi, eax
movzx eax, word [edx + 0x162]
push eax
push 0x5e56
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
jmp 0x415f50
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415f50
mov dx, word [0x5c05a8]
push 0x5e74
mov word [edi], dx
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415f71
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x415f80
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x415fa0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415fa0
jmp 0x415ee7
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415fb1
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov esi, eax
movzx eax, word [edx + 0x162]
push eax
push 0x5e57
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x415ff5
mov dx, word [0x5c05a8]
push 0x5e74
mov word [edi], dx
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416016
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x416022
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416040
jmp 0x415ee7
push 0x5e53
call fcn.00531d80
add esp, 4
mov esi, eax
jmp 0x416060
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416060
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x416070
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x416090
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416090
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov esi, eax
movzx eax, word [edx + 0x162]
push eax
push 0x5e55
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4160d4
mov dx, word [0x5c05a8]
push 0x5e74
mov word [edi], dx
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4160f5
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x416101
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416120
jmp 0x415ee7
push 0x5f06
call fcn.00531d80
add esp, 4
mov esi, eax
jmp 0x416140
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416140
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x416150
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
rep movsb byte es:[edi], byte [esi]
je 0x416ed4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416176
mov dx, word [0x5c05a8]
push 0x5e74
mov word [edi], dx
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416197
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4161a3
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4161c0
jmp 0x415ee7
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4161d1
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov esi, eax
movzx eax, word [edx + 0x162]
push eax
push 0x5f07
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416206
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov esi, eax
movzx eax, word [edx + 0x162]
push eax
push 0x5f08
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
jmp 0x416240
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416240
sub eax, edx
push 1
push 0x5f14
mov esi, eax
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416264
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5f15
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416294
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5f16
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4162c4
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5f1c
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4162f4
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5f20
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416324
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5f21
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416354
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push 4
push ecx
push 0x52b3
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [fcn.005c02cc]
add esp, 0x10
jmp 0x416ed4
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416394
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5f2a
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4163c4
sub eax, edx
mov esi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5f36
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4163f4
sub eax, edx
push 0x5f69
mov esi, eax
call fcn.00531d80
push eax
lea eax, [ebx + esi]
push eax
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416418
sub eax, edx
push 0x5f7a
mov esi, eax
call fcn.00531d80
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416440
sub eax, edx
push 0x525c
mov esi, eax
call fcn.00531d80
push eax
lea edx, [ebx + esi]
push edx
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416473
mov ax, word [0x5c05a8]
push 0x5e74
mov word [edi], ax
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416493
sub eax, esi
lea edi, [ebx - 1]
nop
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4164a0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x4164c0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4164c0
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.004a3130
jmp 0x416ed1
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [eax + 0x162]
mov esi, dword [eax + reloc.MSVCRT.dll_strncpy]
test edx, edx
jle 0x416542
mov eax, ebx
lea edi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416500
push edx
sub eax, edi
push 0x52a0
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c0734
push eax
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416530
mov cx, word [0x5c05a8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416547
sub eax, edx
push esi
push 0x529f
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call dword [fcn.005c02cc]
add esp, 0xc
jmp case.0x415cba.65484
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416578
sub eax, edx
push 0x4c4c7b
mov esi, eax
call fcn.00531d80
push eax
lea eax, [ebx + esi]
push eax
call dword [fcn.005c02cc]
add esp, 0xc
jmp case.0x415cba.65484
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4165a5
sub eax, edx
push 0x534e
mov esi, eax
call fcn.00531d80
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4165d0
push 0x534f
jmp 0x416ebd
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4165e6
sub eax, edx
push 0x5363
mov esi, eax
call fcn.00531d80
push eax
lea eax, [ebx + esi]
push eax
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416610
sub eax, edx
push 0x53f2
mov esi, eax
call fcn.00531d80
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416634
push 0x53f2
jmp 0x416ebd
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416650
sub eax, edx
push 0x537f
mov esi, eax
call fcn.00531d80
push eax
lea eax, [ebx + esi]
push eax
jmp 0x41668b
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416671
sub eax, edx
push 0x5380
mov esi, eax
call fcn.00531d80
push eax
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, word [edx + 0x162]
add esp, 0xc
cmp eax, 2
jne 0x4166ab
lea edi, [eax + 0x3a]
jmp 0x4166b7
cmp eax, 3
jne 0x416ed4
lea edi, [eax + 0x43]
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4166c0
sub eax, edx
push edi
push 0x5396
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + esi]
push eax
jmp 0x416ecb
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [ecx + 0x162]
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4166f5
push edx
sub eax, esi
push 0x4c4c39
mov esi, eax
call fcn.00531d80
add esp, 4
jmp 0x416ec6
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [eax + 0x162]
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416725
push edx
sub eax, esi
push 0x4c4c3a
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x416ecb
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [edx + 0x162]
mov eax, ebx
lea esi, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416760
push edx
sub eax, esi
push 0x5389
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + esi]
push eax
jmp 0x416ecb
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [ecx + 0x162]
push edx
call fcn.0052c1e0
add esp, 4
xor edx, edx
test eax, eax
je 0x4167a5
mov edx, dword [eax + reloc.MSVCRT.dll_strncpy]
mov eax, ebx
lea esi, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4167b0
sub eax, esi
push edx
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x53ca
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + esi]
push eax
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x416ed4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4167f0
mov cx, word [0x5c05a8]
push 0x5e74
mov word [edi], cx
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416811
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x416820
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x416840
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416840
sub eax, edx
lea edx, [ebx + eax]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
push 0x5e75
push eax
call fcn.004a3130
jmp 0x416ed1
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416868
sub eax, edx
push 0x4c4bc7
mov esi, eax
call fcn.00531d80
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x416ecb
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416890
push 0x4c4bcf
jmp 0x416ebd
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4168a4
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
call fcn.00529960
add esp, 4
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x416df9
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4168e8
sub eax, edx
push 0x4c5eee
mov esi, eax
call fcn.00531d80
push eax
lea edx, [ebx + esi]
mov esi, dword [fcn.005c02cc]
push 0x5c05cc
push edx
call esi
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416915
mov ax, word [0x5c05a8]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [edi], ax
mov ecx, dword [ecx + 4]
mov edx, ecx
and edx, 0x1b800fdf
xor eax, eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
cmp edx, 0x1b800fdf
jne 0x416967
push ebx
push 0x5ea9
push eax
call fcn.00408220
push ebx
push 0x5ec4
push eax
call fcn.00408220
add esp, 0x18
jmp 0x416b4b
test cl, 1
je 0x4169fd
mov eax, ecx
and eax, 0x1b800001
cmp eax, 0x1b800001
je 0x4169de
test ecx, 0x8000000
je 0x41698e
push ebx
push 0x5dcf
jmp 0x4169e4
test ecx, 0x1000000
je 0x41699e
push ebx
push 0x5dd0
jmp 0x4169e4
test ecx, 0x800000
je 0x4169ae
push ebx
push 0x5dd1
jmp 0x4169e4
test ecx, 0x2000000
je 0x4169be
push ebx
push 0x5dd2
jmp 0x4169e4
test ecx, 0x4000000
je 0x4169ce
push ebx
push 0x5dd3
jmp 0x4169e4
test ecx, 0x10400000
je 0x4169de
push ebx
push 0x5dd4
jmp 0x4169e4
push ebx
push 0x5ea9
push 0
call fcn.00408220
add esp, 0xc
mov dword [ebp - 0x1a0], 0x4c5ef3
jmp 0x416b4b
mov edx, ecx
and edx, 0xfde
cmp edx, 0xfde
jne 0x416a1a
push ebx
push 0x5ec4
push 0
jmp 0x416b39
test ecx, 0x8000000
je 0x416a38
push ebx
push 0x5dcf
push 0
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test cl, 2
je 0x416a52
push ebx
push 0x5e48
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test cl, 4
je 0x416a6c
push ebx
push 0x5e49
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test cl, 8
je 0x416a86
push ebx
push 0x5e4a
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test cl, 0x10
je 0x416aa0
push ebx
push 0x5e4b
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test cl, cl
jns 0x416ab9
push ebx
push 0x5e44
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test cl, 0x40
je 0x416ad3
push ebx
push 0x5e45
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test ecx, 0x100
je 0x416af0
push ebx
push 0x5e4c
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test ecx, 0x200
je 0x416b0d
push ebx
push 0x5e4d
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test ecx, 0x400
je 0x416b2a
push ebx
push 0x5e4e
push eax
call fcn.00408220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0xc
test ecx, 0x800
je 0x416b41
push ebx
push 0x5e4f
push eax
call fcn.00408220
add esp, 0xc
mov dword [ebp - 0x1a0], 0x4c5efc
test eax, eax
je 0x416b63
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416b52
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416b68
sub eax, edx
push 0x4c5eef
mov edi, eax
call fcn.00531d80
push eax
lea ecx, [ebx + edi]
push 0x5c05cc
push ecx
call esi
add esp, 0x10
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416b90
mov dx, word [0x5c05a8]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [edi], dx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
add esi, 0xc
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0xa
mov eax, 1
cmp dword [esi - 4], 0
je 0x416c53
cmp dword [esi], 0
je 0x416c53
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x416be8
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
jmp 0x416c01
lea edi, [ebx - 1]
jmp 0x416bf0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416bf0
mov ax, word [0x5c0580]
mov word [edi], ax
mov ecx, dword [esi - 4]
push ecx
call fcn.00533380
mov ecx, ebx
add esp, 4
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x416c18
mov edx, dword [eax + 0x7c]
sub ecx, edi
push edx
mov edi, ecx
call fcn.00531d80
add esp, 4
push eax
mov eax, dword [esi]
push eax
push 0x4c5ef1
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
mov eax, 1
add esi, 8
sub dword [ebp - reloc.MSVCRT.dll_strncpy], eax
jne 0x416bc4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416c65
mov dx, word [0x5c05a8]
mov eax, ebx
mov word [edi], dx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416c80
sub eax, edx
push 0x4c5ef0
mov esi, eax
call fcn.00531d80
push eax
lea eax, [ebx + esi]
push 0x5c05cc
push eax
call dword [fcn.005c02cc]
add esp, 0x10
lea edi, [ebx - 1]
jmp 0x416cb0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416cb0
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov cx, word [0x5c05a8]
add edx, 0x5c
mov word [edi], cx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 9
jmp 0x416cf0
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp dword [eax - 4], 0
je 0x416de6
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x416d15
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 1
jmp 0x416d2a
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416d18
mov cx, word [0x5c0580]
mov word [edi], cx
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov esi, dword [eax - 4]
sub esi, 0x43
test dword [eax], reloc.MSVCRT.dll_strncpy
mov eax, ebx
lea edx, [eax + 1]
je 0x416da0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416d43
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edi, dword [edx]
push 0x4c5ef2
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
mov eax, edi
and eax, 0xffff
push eax
sar edi, 0x10
add ecx, esi
push edi
push ecx
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
lea eax, [ebx + edx]
push 0x5c0904
push eax
call dword [fcn.005c02cc]
add esp, 0x18
jmp 0x416de6
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416da0
sub eax, edx
push 0x4c5ef2
mov edi, eax
call fcn.00531d80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, dword [ecx]
add esp, 4
push eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
add eax, esi
push eax
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c08fc
push ecx
call dword [fcn.005c02cc]
add esp, 0x14
add dword [ebp - reloc.MSVCRT.dll_strncpy], 8
dec dword [ebp - reloc.MSVCRT.dll_strncpy]
jne 0x416cf0
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x416e00
mov dx, word [0x5c0630]
mov word [eax], dx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
jmp 0x416ed4
cmp byte [ebx], 0
je 0x416e3a
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416e28
mov dx, word [0x5c05a8]
mov word [edi], dx
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x416e40
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x168]
push 1
push ecx
push ebx
push 0
push 0
call fcn.004132c0
add esp, 0x14
lea eax, [ebx - 1]
jmp 0x416e80
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x416e80
mov dx, word [0x5c0630]
mov word [eax], dx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
jmp case.0x415cba.65484
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x18000
mov eax, ebx
lea edx, [eax + 1]
je 0x416ee4
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416eb1
push 0x5ecc
sub eax, edx
mov esi, eax
call fcn.00531d80
push eax
lea edx, [ebx + esi]
push edx
call dword [fcn.005c02cc]
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x416ed7
jmp 0x4170e8
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416ef0
sub eax, edx
push esi
mov edi, eax
call fcn.00534f30
add esp, 4
push eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x162]
push ecx
push 0x5e90
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call dword [fcn.005c02cc]
add esp, 0x10
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x416f31
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416f51
sub eax, edx
mov esi, eax
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416f60
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416f76
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
movzx edx, word [ecx + 0x162]
push 1
lea edi, [ebx + eax]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edi
push edx
push eax
push 0
push 0
push 0
call fcn.0040b810
add esp, 0x1c
cmp byte [edi], 0
je 0x416fcd
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x416fb0
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
jmp 0x416fd1
mov byte [ebx + esi], 0
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0x13
jne case.0x415cba.65484
cmp byte [ebx], 0
je 0x416ff7
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x416fe6
mov ax, word [0x5c05a8]
mov word [edi], ax
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
lea eax, [ebx - 1]
je 0x417020
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417003
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
jmp 0x417038
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417020
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, word [eax + 0x172]
test ax, ax
je 0x417051
mov edx, eax
jmp 0x41705e
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [ecx + 0xf10]
mov eax, ebx
test edx, edx
jne 0x417091
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417067
sub eax, edx
push 0x5ec1
mov esi, eax
call fcn.00531d80
push eax
lea edx, [ebx + esi]
push 0x5c05dc
push edx
call dword [fcn.005c02cc]
add esp, 0x10
jmp 0x4170db
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417094
sub eax, esi
push edx
lea esi, [ebx + eax]
call fcn.00536c30
push eax
call fcn.00531d80
add esp, 8
push eax
push 0x5eb4
call fcn.00531d80
add esp, 4
push eax
push 0x4f1d
call fcn.00531d80
add esp, 4
push eax
push 0x5c08f0
push esi
call dword [fcn.005c02cc]
add esp, 0x14
lea eax, [ebx - 1]
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4170e0
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
test esi, 0xc0000000
jne 0x417119
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x20000000
je 0x4171b9
cmp byte [ebx], 0
je 0x417132
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x417121
mov ax, word [0x5c05a8]
mov word [edi], ax
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417135
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
xor eax, eax
test esi, esi
jns 0x41715e
push ebx
push 0x5dd5
jmp 0x417170
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x20000000
je 0x41717a
push ebx
push 0x5f19
push 0
call fcn.00408220
add esp, 0xc
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x40000000
je 0x417195
push ebx
push 0x5dd6
push eax
call fcn.00408220
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417198
mov cx, word [0x5c0630]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
test esi, 0x1fdf
jne 0x4171d1
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0xf7e00
je 0x419362
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x419362
cmp byte [ebx], 0
je 0x4171f7
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4171e6
mov ax, word [0x5c05a8]
mov word [edi], ax
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, 0x200
test word [esi + 2], cx
jne 0x41731f
movzx edx, word [esi]
push edx
call fcn.00533d00
add esp, 4
test eax, eax
jne 0x41731f
movzx ecx, byte [esi + 0x46]
mov eax, ecx
sar eax, 4
and eax, 0xf
cmp eax, 4
jle 0x417234
sub eax, 0x10
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edi, byte [edx + 0x152]
add edi, eax
test edi, edi
jle 0x4174e2
and ecx, 0xf
mov edx, edi
sub edx, ecx
jns 0x417258
xor edx, edx
jmp 0x41725c
test edx, edx
jne 0x41727b
lea esi, [ebx - 1]
nop
mov cl, byte [esi + 1]
inc esi
test cl, cl
jne 0x417260
mov cx, word [0x5c0634]
mov word [esi], cx
mov cl, byte [0x5c0636]
mov byte [esi + 2], cl
test eax, eax
mov eax, ebx
lea esi, [eax + 1]
jle 0x4172aa
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417284
push edi
push edx
sub eax, esi
push 0x5eb8
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5c08e0
lea edx, [ebx + esi]
push edx
jmp 0x4172fa
jns 0x4172d6
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4172b0
push edi
push edx
sub eax, esi
push 0x5eb8
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5c08d0
lea eax, [ebx + esi]
push eax
jmp 0x4172fa
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4172d6
push edi
push edx
sub eax, esi
push 0x5eb8
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5c08c4
lea ecx, [ebx + esi]
push ecx
mov esi, dword [fcn.005c02cc]
call esi
add esp, 0x14
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x417308
mov dx, word [0x5c05a8]
mov word [edi], dx
jmp 0x4174e8
movzx esi, byte [esi + 0x46]
push 0x4c4b8f
call fcn.00531d80
push 0x4c4b90
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
push 0x4c4b93
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov eax, esi
sar eax, 4
and eax, 0xf
add esp, 0xc
and esi, 0xf
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], esi
je 0x4173f7
mov edx, esi
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417378
mov cx, word [0x5c05f0]
mov word [eax], cx
mov cl, byte [0x5c05f2]
mov byte [eax + 2], cl
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
dec edx
mov esi, ecx
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4173a0
sub ecx, esi
mov eax, ecx
lea edi, [ebx - 1]
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4173b0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test edx, edx
jne 0x417393
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4173d0
mov dx, word [0x5c0630]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [eax], dx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, eax
sub edx, esi
je 0x417460
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417400
mov cx, word [0x5c0630]
mov word [eax], cx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
jmp 0x417420
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
dec edx
mov esi, eax
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417430
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x417440
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test edx, edx
jne 0x417420
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, byte [edx + 0x328]
sub edx, eax
test edx, edx
jle 0x4174ca
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417476
mov cx, word [0x5c0630]
mov word [eax], cx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
dec edx
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4174a0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4174b0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test edx, edx
jne 0x417491
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4174d0
mov dx, word [0x5c05a8]
mov word [edi], dx
mov esi, dword [fcn.005c02cc]
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x4001000
jne 0x417815
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
lea eax, reloc.MSVCRT.dll_strncpy
push eax
push ecx
call fcn.005337f0
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
mov edi, eax
call fcn.00533880
add esp, 0xc
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
call fcn.004b1220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp dword [ecx + 0x23], eax
jne 0x417546
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 1
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov eax, ebx
lea edx, [eax + 1]
jne 0x417659
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x4175d4
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x4175a0
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417570
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push 0x5c08b4
jmp 0x417742
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4175a0
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push 0x5c08a4
lea edx, [ebx + ecx]
push edx
jmp 0x417746
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x417620
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4175e0
sub eax, edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edi
push eax
push 0x5ec6
call fcn.00531d80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push 0x5c0894
lea edx, [ebx + ecx]
push edx
jmp 0x417746
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417620
sub eax, edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edi
push eax
push 0x5ec6
call fcn.00531d80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push 0x5c0888
lea edx, [ebx + ecx]
push edx
jmp 0x417746
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x4176d4
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x4176a4
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417670
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
add esp, 4
push eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0x5c0874
lea ecx, [ebx + eax]
push ecx
jmp 0x417746
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4176a4
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push 0x5c0860
jmp 0x417742
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x417712
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4176e0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edi
push ecx
sub eax, edx
push 0x5ec6
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push 0x5c084c
jmp 0x417742
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417712
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edi
push ecx
sub eax, edx
push 0x5ec6
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push 0x5c08d0
lea eax, [ebx + edx]
push eax
call esi
add esp, 0x14
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x417750
mov cx, word [0x5c05a8]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [edi], cx
cmp word [edx + 0x303], 0
je 0x417815
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417780
mov cx, word [0x5c05f0]
mov word [eax], cx
mov dl, byte [0x5c05f2]
push 0x5f89
mov byte [eax + 2], dl
call fcn.00531d80
add esp, 4
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4177b0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4177c0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4177e0
mov ax, word [0x5c05a8]
mov word [edi], ax
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4177f4
mov cx, word [0x5c0630]
mov esi, dword [fcn.005c02cc]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x200000
je 0x417873
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [eax]
mov ecx, dword [eax + 0x4b]
push edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
call fcn.00531c30
mov edx, dword [eax + 0xd]
mov eax, ebx
add esp, 4
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417844
sub eax, edi
mov edi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
push eax
push 0x4c5eed
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x5c0888
push ecx
call esi
add esp, 0x14
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
test eax, 0x1001
je 0x417ab6
push 0x5ddb
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 1
call fcn.00531d80
add esp, 4
mov esi, eax
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4178a0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4178b0
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movsx esi, byte [eax + 0x44]
add esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edi, dword [edx + 0xfb]
test esi, esi
jle 0x41790a
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4178f0
mov cx, word [0x5c07f8]
mov word [eax], cx
mov dl, byte [0x5c07fa]
jmp 0x417928
jns 0x41792b
lea eax, [ebx - 1]
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417910
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417930
sub eax, edx
movsx ecx, di
sar edi, 0x10
movsx edx, di
add ecx, esi
push ecx
add edx, esi
push edx
add eax, ebx
push 0x5c0844
push eax
call dword [fcn.005c02cc]
add esp, 0x10
test esi, esi
je 0x41797b
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417960
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x1000
jne 0x417ccb
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x417990
mov ax, word [0x5c05a8]
push 0x5dd8
mov word [edi], ax
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4179b0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4179c0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea esi, [eax + 1]
jmp 0x4179e0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4179e0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, byte [ecx + 0x9c]
mov edi, dword [fcn.005c02cc]
push edx
sub eax, esi
add eax, ebx
push 0x5c0624
push eax
call edi
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [eax + 0x4a9]
movzx edx, word [eax + 0x49d]
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 0xc
cmp eax, 1
jle 0x417a3d
mov eax, 1
jmp 0x417a41
test eax, eax
jle 0x417a5e
mov esi, ebx
lea edx, [esi + 1]
mov cl, byte [esi]
inc esi
test cl, cl
jne 0x417a46
push eax
sub esi, edx
lea eax, [ebx + esi]
push 0x5c083c
push eax
call edi
add esp, 0xc
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ecx
call fcn.0040aa40
mov ecx, eax
add esp, 4
test ecx, ecx
jle 0x417ccb
mov eax, 0x66666667
imul ecx
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
test esi, esi
jle 0x417ccb
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417a95
sub eax, edx
push esi
lea edx, [ebx + eax]
push 0x5c0830
push edx
call dword [fcn.005c02cc]
add esp, 0xc
jmp 0x417ccb
test eax, 0x800
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x417bcf
movsx ecx, byte [eax + 0x44]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 2
movzx eax, word [edx + 0x101]
add eax, ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x417ccb
push 0x5dde
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417b05
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x417b11
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test eax, eax
jle 0x417b4e
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417b34
mov cx, word [0x5c07f8]
mov word [eax], cx
mov dl, byte [0x5c07fa]
jmp 0x417b6b
jns 0x417b6e
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417b53
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417b73
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, edx
push 0xa
add eax, ebx
push eax
push ecx
call fcn.00567e2f
add esp, 0x14
lea edi, [ebx - 1]
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x417ba0
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dx, word [0x5c0584]
mov word [edi], dx
je 0x417ccb
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417bc2
jmp 0x417cb8
movsx eax, byte [eax + 0x44]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 4
movzx ecx, word [ecx + 0x103]
add ecx, eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
je 0x417ccb
push 0x5ddd
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417c13
sub eax, esi
lea edi, [ebx - 1]
nop
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x417c20
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test eax, eax
jle 0x417c5d
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417c43
mov dx, word [0x5c07f8]
mov word [eax], dx
mov cl, byte [0x5c07fa]
jmp 0x417c7a
jns 0x417c7d
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417c62
mov dx, word [0x5c0634]
mov word [eax], dx
mov cl, byte [0x5c0636]
mov byte [eax + 2], cl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417c82
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
add eax, ebx
push 0x5c082c
push eax
call dword [fcn.005c02cc]
add esp, 0xc
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x417ccb
lea eax, [ebx - 1]
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417cb0
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
lea eax, [ebx - 1]
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417cd0
test byte [ebp - 0x1a8], 1
mov cx, word [0x5c05fc]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [eax], cx
mov dl, byte [0x5c05fe]
mov byte [eax + 2], dl
jne 0x417d20
mov eax, dword [esi + 0xfb]
test eax, eax
je 0x417d20
push 0
push 1
push ebx
push 0x5ddb
push eax
call fcn.00408760
add esp, 4
push eax
call fcn.004083c0
add esp, 0x14
test byte [ebp - 0x1a8], 4
jne 0x417d47
movzx eax, word [esi + 0x103]
test eax, eax
je 0x417d47
push 0
push 1
push ebx
push 0x5ddd
push eax
call fcn.004083c0
add esp, 0x14
test byte [ebp - 0x1a8], 2
jne 0x417d6e
movzx eax, word [esi + 0x101]
test eax, eax
je 0x417d6e
push 0
push 1
push ebx
push 0x5dde
push eax
call fcn.004083c0
add esp, 0x14
movsx eax, word [esi + 0x123]
test eax, eax
je 0x417d8a
imul eax, eax, 0x64
push 1
push ebx
push 0x3c
push eax
call fcn.00408290
add esp, 0x10
mov eax, dword [esi + 0xf7]
test eax, eax
je 0x417da7
push 0
push 1
push ebx
push 0x5dd9
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + 0xef]
test eax, eax
je 0x417dc4
push 0
push 1
push ebx
push 0x5dda
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + 0xf3]
test eax, eax
je 0x417de1
push 0
push 1
push ebx
push 0x5e07
push eax
call fcn.004083c0
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417de4
mov cx, word [0x5c05fc]
mov word [eax], cx
mov dl, byte [0x5c05fe]
mov byte [eax + 2], dl
mov eax, dword [esi + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x417e20
push 0
push 1
push ebx
push 0x5dc6
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x417e41
push 0
push 1
push ebx
push 0x5dc7
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x417e62
push 0
push 1
push ebx
push 0x5dc8
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x417e83
push 0
push 1
push ebx
push 0x5dc9
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x417ea4
push 0
push 1
push ebx
push 0x5dca
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x417ec5
push 0
push 1
push ebx
push 0x5dcb
push eax
call fcn.004083c0
add esp, 0x14
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x1101
je 0x417fca
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov al, byte [eax + 0x45]
test al, al
je 0x417fca
movzx ecx, word [esi + 0x105]
add ecx, dword [ebp - 0xfc]
movzx eax, al
add eax, ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x417fec
cmp byte [ebx], 0
je 0x417f22
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x417f10
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x5de1
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417f31
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x417f40
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417f60
mov cx, word [0x5c07f8]
mov word [eax], cx
mov dl, byte [0x5c07fa]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x417f80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, edx
push 0xa
add eax, ebx
push eax
push ecx
call fcn.00567e2f
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x417fa7
mov dx, word [0x5c05fc]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [eax], dx
mov cl, byte [0x5c05fe]
mov byte [eax + 2], cl
jmp 0x417fec
movzx eax, word [esi + 0x105]
add eax, dword [ebp - 0xfc]
je 0x417fec
push 0
push 1
push ebx
push 0x5de1
push eax
call fcn.004083c0
add esp, 0x14
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov al, byte [edx + 0x48]
test al, al
jne 0x418023
movzx eax, word [esi + 0xff]
test eax, eax
je 0x418146
push 0
push 0x80000001
push ebx
push 0x5ddc
push eax
call fcn.004083c0
add esp, 0x14
jmp 0x418146
movsx ecx, al
movzx eax, word [esi + 0xff]
add eax, ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x418146
cmp byte [ebx], 0
je 0x418061
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418050
mov ax, word [0x5c05a8]
mov word [edi], ax
push 0x5ddc
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418070
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x418080
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test eax, eax
jle 0x4180bd
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4180a3
mov cx, word [0x5c07f8]
mov word [eax], cx
mov dl, byte [0x5c07fa]
jmp 0x4180da
jns 0x4180dd
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4180c2
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4180e2
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, edx
push 0xa
add eax, ebx
push eax
push ecx
call fcn.00567e2f
add esp, 0x14
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418110
mov dx, word [0x5c0584]
mov word [edi], dx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418125
mov cx, word [0x5c05fc]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [eax], cx
mov dl, byte [0x5c05fe]
mov byte [eax + 2], dl
movzx eax, word [esi + 0x107]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x418168
push 0
push 1
push ebx
push 0x5ddf
push eax
call fcn.004083c0
add esp, 0x14
test byte [ebp - 0x1b4], 6
je 0x418264
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov al, byte [eax + 0x45]
test al, al
je 0x418264
movzx ecx, word [esi + 0x109]
add ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, al
add eax, ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x418286
cmp byte [ebx], 0
je 0x4181c2
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4181b0
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x5de0
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4181d1
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4181e0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418200
mov cx, word [0x5c07f8]
mov word [eax], cx
mov dl, byte [0x5c07fa]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418220
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, edx
push 0xa
add eax, ebx
push eax
push ecx
call fcn.00567e2f
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418247
mov dx, word [0x5c05fc]
mov word [eax], dx
mov cl, byte [0x5c05fe]
mov byte [eax + 2], cl
jmp 0x418286
movzx eax, word [esi + 0x109]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x418286
push 0
push 1
push ebx
push 0x5de0
push eax
call fcn.004083c0
add esp, 0x14
lea edx, reloc.MSVCRT.dll_strncpy
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5de2
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 8
mov ecx, 1
jmp 0x4182c0
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx esi, byte [eax + edx - 0x5cb3]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esi, dword [eax]
je 0x41839e
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
lea edi, [ebx - 1]
jne 0x418310
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4182f0
mov dx, word [0x5c05a8]
mov word [edi], dx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jmp 0x418321
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418310
mov ax, word [0x5c0580]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418326
sub eax, edx
push 0x5dea
mov edi, eax
call fcn.00531d80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push ecx
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x5c05f4
push edx
call dword [fcn.005c02cc]
mov eax, ebx
add esp, 0x10
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418366
push 0
push 0x80000009
sub eax, edi
push 0xa
add eax, ebx
push eax
push esi
call fcn.00567e2f
add esp, 0x14
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418387
mov cx, word [0x5c0584]
mov word [edi], cx
mov ecx, 1
add dword [ebp - reloc.MSVCRT.dll_strncpy], 4
add dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
sub dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jne 0x4182c0
lea edx, reloc.MSVCRT.dll_strncpy
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5de2
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 8
mov ecx, 1
jmp 0x4183f0
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx esi, byte [edx + eax - 0x5cbc]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esi, dword [eax]
je 0x4184ce
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
lea edi, [ebx - 1]
jne 0x418440
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418420
mov dx, word [0x5c05a8]
mov word [edi], dx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jmp 0x418451
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418440
mov ax, word [0x5c0580]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418456
sub eax, edx
push 0x5deb
mov edi, eax
call fcn.00531d80
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push ecx
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x5c05f4
push edx
call dword [fcn.005c02cc]
mov eax, ebx
add esp, 0x10
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418496
push 0
push 0x80000009
sub eax, edi
push 0xa
add eax, ebx
push eax
push esi
call fcn.00567e2f
add esp, 0x14
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4184b7
mov cx, word [0x5c0584]
mov word [edi], cx
mov ecx, 1
add dword [ebp - reloc.MSVCRT.dll_strncpy], 4
add dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
sub dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jne 0x4183f0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5de2
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 8
mov eax, 1
jmp 0x418510
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movsx esi, byte [ecx + edx - 0x5caa]
test esi, esi
je 0x4185bd
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418530
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418546
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
push ecx
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
push 0x5f2c
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call dword [fcn.005c02cc]
mov eax, ebx
add esp, 0xc
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418581
push 0
push 9
sub eax, edi
push 0xa
add eax, ebx
push eax
push esi
call fcn.00567e2f
add esp, 0x14
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4185a0
mov cx, word [0x5c0584]
mov word [edi], cx
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, 1
add dword [ebp - reloc.MSVCRT.dll_strncpy], eax
sub dword [ebp - reloc.MSVCRT.dll_strncpy], eax
jne 0x418510
mov eax, dword [ecx + reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x41866a
cmp byte [ebx], 0
je 0x418602
lea edi, [ebx - 1]
jmp 0x4185f0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4185f0
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x4c4b46
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418611
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x418620
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x418640
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418640
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, edx
push 0xa
add eax, ebx
push eax
push ecx
call fcn.00567e2f
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
mov eax, dword [ecx + reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x4186fa
cmp byte [ebx], 0
je 0x418698
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418686
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x4c4b47
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4186a7
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4186b3
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4186d0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, edx
push 0xa
add eax, ebx
push eax
push ecx
call fcn.00567e2f
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
movzx eax, byte [ecx + 0x150]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x41877c
cmp byte [ebx], 0
je 0x418729
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418717
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x5deb
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418738
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x418744
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push 0x80000000
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
and ecx, 3
push 0x5df1
push eax
rep movsb byte es:[edi], byte [esi]
call fcn.004083c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
movzx eax, byte [ecx + 0x14c]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x418808
cmp byte [ebx], 0
je 0x4187b2
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4187a0
mov cx, word [0x5c05a8]
mov word [edi], cx
push 0x5deb
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4187c1
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4187d0
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push 0x80000000
push ebx
mov ecx, eax
and ecx, 3
push 0x5df2
push edx
rep movsb byte es:[edi], byte [esi]
call fcn.004083c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
movzx eax, byte [ecx + 0x14f]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x418889
cmp byte [ebx], 0
je 0x418836
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418825
mov ax, word [0x5c05a8]
mov word [edi], ax
push 0x5deb
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418845
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x418851
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
mov ecx, eax
push 0x80000000
and ecx, 3
push ebx
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0x5df3
push ecx
call fcn.004083c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
movzx eax, byte [ecx + 0x151]
add eax, dword [ebp - 0x108]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x41890b
cmp byte [ebx], 0
je 0x4188b8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4188a6
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x5deb
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4188c7
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4188d3
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push 0x80000000
mov ecx, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ebx
and ecx, 3
push 0x5df4
push eax
rep movsb byte es:[edi], byte [esi]
call fcn.004083c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
movzx eax, byte [ecx + 0x14d]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x418998
cmp byte [ebx], 0
je 0x418942
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418930
mov cx, word [0x5c05a8]
mov word [edi], cx
push 0x5deb
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418951
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x418960
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push 0x80000000
push ebx
mov ecx, eax
and ecx, 3
push 0x5df5
push edx
rep movsb byte es:[edi], byte [esi]
call fcn.004083c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
movzx eax, byte [ecx + 0x14e]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x418a28
cmp byte [ebx], 0
je 0x4189d1
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4189c0
mov ax, word [0x5c05a8]
mov word [edi], ax
push 0x5deb
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4189e0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4189f0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
mov ecx, eax
push 0x80000000
and ecx, 3
push ebx
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0x5df6
push ecx
call fcn.004083c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
movzx eax, byte [ecx + 0x2fe]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x418a94
cmp byte [ebx], 0
movzx esi, byte [ecx + 0x2fd]
je 0x418a5a
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418a48
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418a60
sub eax, edx
mov edi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
push esi
push 0x5f57
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call dword [fcn.005c02cc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x10
movzx eax, byte [ecx + 0x300]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x418b04
cmp byte [ebx], 0
movzx esi, byte [ecx + 0x2ff]
je 0x418ac6
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418ab4
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, ebx
lea edx, [eax + 1]
jmp 0x418ad0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418ad0
sub eax, edx
mov edi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
push esi
push 0x5f58
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call dword [fcn.005c02cc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x10
movzx eax, byte [ecx + 0x302]
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x418b74
cmp byte [ebx], 0
movzx esi, byte [ecx + 0x301]
je 0x418b36
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418b24
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, ebx
lea edx, [eax + 1]
jmp 0x418b40
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418b40
sub eax, edx
mov edi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
push esi
push 0x5f59
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call dword [fcn.005c02cc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x10
cmp byte [ecx + 0x2fc], 0
je 0x418bce
cmp byte [ebx], 0
je 0x418b97
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418b85
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418ba0
sub eax, edx
push 0x533d
mov edi, eax
call fcn.00531d80
push eax
lea eax, [ebx + edi]
push 0x5c0824
push eax
call dword [fcn.005c02cc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x10
cmp word [ecx + 0x14a], 0
je 0x418c01
lea eax, [ebx - 1]
jmp 0x418be0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418be0
mov cx, word [0x5c05f0]
mov word [eax], cx
mov dl, byte [0x5c05f2]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [eax + 2], dl
cmp byte [ecx + 0x329], 0
je 0x418cb5
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418c11
mov ax, word [0x5c05a8]
mov word [edi], ax
movzx esi, byte [ecx + 0x32a]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [ecx + 0x3cf]
lea eax, [ebx - 1]
cmp esi, edx
jl 0x418c60
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418c40
mov cx, word [0x5c05f0]
mov word [eax], cx
mov dl, byte [0x5c05f2]
jmp 0x418c78
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418c60
mov cx, word [0x5c0634]
mov word [eax], cx
mov dl, byte [0x5c0636]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418c80
sub eax, edx
mov edi, eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, byte [eax + 0x329]
push ecx
push esi
push 0x5fbd
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call dword [fcn.005c02cc]
add esp, 0x10
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x418cca
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5000000
je 0x418ce7
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
push ebx
push esi
push ecx
call fcn.0040b540
add esp, 0x10
jmp 0x418ced
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0
push 0
push 0
lea edx, reloc.MSVCRT.dll_strncpy
push edx
push ebx
call fcn.00408780
add esp, 0x18
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418d08
mov cx, word [0x5c0820]
mov word [eax], cx
mov dl, byte [0x5c0822]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, word [esi + 0xdc]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push eax
push ecx
push 6
add edx, 0x28
push edx
lea eax, reloc.MSVCRT.dll_strncpy
push eax
push ebx
call fcn.00411560
add esp, 0x1c
test eax, eax
je 0x418d5e
or dword [ebp - reloc.MSVCRT.dll_strncpy], 0x80000000
cmp byte [ebx], 0
je 0x418d78
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418d66
mov cx, word [0x5c05a8]
mov word [edi], cx
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x418fb5
test byte [ebp - 0x1a8], 6
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x418eeb
test ecx, ecx
je 0x418eeb
cmp ecx, 0xf
jg 0x418dc5
movzx edx, word [esi + 0xdc]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, ecx
jmp 0x418e40
cmp ecx, 0x14
jg 0x418df9
movzx edx, word [esi + 0xdc]
add ecx, 0xfffffff1
imul ecx, edx
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, eax
shl edx, 4
sub edx, eax
add ecx, edx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jmp 0x418e46
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx esi, word [eax + 0xdc]
add ecx, 0xffffffec
imul ecx, esi
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
fild dword [ebp - 0x1bc]
fmul qword [0x5c0818]
call fcn.0059ebf0
mov edi, eax
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [esi + eax*2]
add ecx, eax
lea eax, [ecx + ecx*4]
sub eax, edi
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418e50
mov cx, word [0x5c05f0]
mov word [eax], cx
mov dl, byte [0x5c05f2]
mov byte [eax + 2], dl
cmp byte [ebx], 0
je 0x418e84
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418e73
mov ax, word [0x5c05a8]
mov word [edi], ax
push 0x1e
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418e90
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x418ea0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea esi, [eax + 1]
jmp 0x418ec0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418ec0
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, esi
push 0xa
lea ecx, [ebx + eax]
push ecx
push edx
call fcn.00567e2f
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
test byte [ebp - 0x1a8], 2
je 0x418fb5
test ecx, ecx
je 0x418fb5
cmp ecx, 0xf
jle 0x418fb5
cmp ecx, dword [0x6d0020]
jg 0x418fb5
add ecx, 0xfffffff1
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418f21
mov cx, word [0x5c05f0]
mov word [eax], cx
mov dl, byte [0x5c05f2]
mov byte [eax + 2], dl
cmp byte [ebx], 0
je 0x418f55
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418f44
mov ax, word [0x5c05a8]
mov word [edi], ax
push 0x5dde
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418f64
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x418f70
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea esi, [eax + 1]
jmp 0x418f90
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418f90
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push 0
push 0x80000009
sub eax, esi
push 0xa
lea ecx, [ebx + eax]
push ecx
push edx
call fcn.00567e2f
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x418fb8
test byte [ebp + 0x10], 1
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
je 0x41900f
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x41900f
test byte [ebp - 0x1a8], 6
je 0x41900f
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, byte [eax + 0xf1f]
test eax, eax
je 0x41900f
push 0
push 1
push ebx
push 0x5f2b
push eax
call fcn.004083c0
add esp, 0x14
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
test byte [ecx + 2], 0x80
je 0x419066
cmp byte [ebx], 0
je 0x419035
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419023
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x5359
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419044
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419050
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [eax + 0x40]
test eax, eax
je 0x419195
cmp eax, reloc.MSVCRT.dll_strncpy
jne 0x4190cc
cmp byte [ebx], 0
je 0x419096
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419084
mov cx, word [0x5c05a8]
mov word [edi], cx
push 0x534c
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4190a5
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4190b1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x419195
push 0
call fcn.0059fa71
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, dword [edx + 0x40]
add esp, 4
cmp ecx, eax
jle 0x41918e
push ecx
call fcn.004a3270
add esp, 4
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test eax, eax
je 0x419195
cmp byte [ebx], 0
je 0x419118
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419106
mov dx, word [0x5c05a8]
mov word [edi], dx
push 0x534d
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419127
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419133
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419150
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
mov edx, dword [ecx + 4]
push edx
mov edx, dword [ecx + 8]
push edx
mov edx, dword [ecx + 0xc]
push edx
mov edx, dword [ecx + 0x10]
mov ecx, dword [ecx + 0x14]
inc edx
push edx
add ecx, 0x76c
push ecx
lea edx, [ebx + eax]
push 0x5c07fc
push edx
call dword [fcn.005c02cc]
add esp, 0x1c
jmp 0x419195
mov dword [edx + 0x40], 0
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419198
mov cx, word [0x5c0630]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov ecx, dword [ebp + 0x10]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push eax
push ebx
push esi
push ecx
call fcn.00412e20
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x10
xor edx, edx
add eax, 0x4f
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov ecx, 9
movzx edi, word [eax]
add edx, edi
add eax, 2
dec ecx
jne 0x4191e4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4191f2
mov ax, word [0x5c05a8]
mov word [edi], ax
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419206
mov cx, word [0x5c05fc]
mov word [eax], cx
mov cl, byte [0x5c05fe]
mov byte [eax + 2], cl
movzx edi, word [esi + 0x32d]
test di, di
je 0x41925a
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419232
push edi
push edx
sub eax, esi
push 0x4c5f05
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [fcn.005c02cc]
add esp, 0x10
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419260
mov dx, word [0x5c05f0]
mov word [eax], dx
mov cl, byte [0x5c05f2]
mov byte [eax + 2], cl
xor eax, eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x419296
mov eax, 0x4c5ef3
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0xfde
je 0x4192ae
mov dword [ebp - 0x1a0], 0x4c5efc
jmp 0x4192b6
test eax, eax
je 0x419336
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
xor esi, esi
mov dword [ebp - reloc.MSVCRT.dll_strncpy], edx
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp word [eax], 0
je 0x419329
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4192d3
mov cx, word [0x5c05a8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4192f0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edi, eax
movzx eax, word [edx]
push eax
add ecx, esi
push ecx
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x5c06e4
push edx
call dword [fcn.005c02cc]
add esp, 0x10
add dword [ebp - reloc.MSVCRT.dll_strncpy], 2
inc esi
cmp esi, 8
jle 0x4192c4
dec ebx
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x419337
mov ax, word [0x5c0630]
mov word [ebx], ax
mov cl, byte [0x5c0632]
pop esi
pop edi
mov byte [ebx + 2], cl
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0059ea5e
mov esp, ebp
pop ebp
ret
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x100000
je 0x419963
cmp byte [ebx], 0
je 0x419392
lea edi, [ebx - 1]
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419380
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx ecx, byte [eax + 0x46]
mov edx, 0x200
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
test word [eax + 2], dx
je 0x41956a
push 0x4c4b8f
call fcn.00531d80
push 0x4c4b90
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
push 0x4c4b93
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
call fcn.00531d80
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, eax
sar ecx, 4
and ecx, 0xf
add esp, 0xc
and eax, 0xf
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
je 0x419497
mov edx, eax
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419410
mov cx, word [0x5c05f0]
mov word [eax], cx
mov cl, byte [0x5c05f2]
mov byte [eax + 2], cl
jmp 0x419430
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
dec edx
mov esi, ecx
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x419440
sub ecx, esi
mov eax, ecx
lea edi, [ebx - 1]
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419450
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test edx, edx
jne 0x419430
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419470
mov dx, word [0x5c0630]
mov word [eax], dx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, ecx
sub edx, eax
je 0x419500
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4194a0
mov cx, word [0x5c0630]
mov word [eax], cx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
jmp 0x4194c0
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
dec edx
mov esi, eax
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4194d0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4194e0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test edx, edx
jne 0x4194c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, byte [edx + 0x328]
sub edx, ecx
test edx, edx
jle 0x41956a
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419516
mov cx, word [0x5c0630]
mov word [eax], cx
mov cl, byte [0x5c0632]
mov byte [eax + 2], cl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
dec edx
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419540
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419550
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test edx, edx
jne 0x419531
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419570
mov dx, word [0x5c05fc]
mov word [eax], dx
mov cl, byte [0x5c05fe]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [eax + 2], cl
mov eax, dword [edx + 0xfb]
test eax, eax
je 0x4195b2
push 0
push 1
sar eax, 0x10
push ebx
cwde
push 0x5ddb
push eax
call fcn.004083c0
add esp, 0x14
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, word [ecx + 0x103]
test eax, eax
je 0x4195d6
push 0
push 1
push ebx
push 0x5ddd
push eax
call fcn.004083c0
add esp, 0x14
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [edx + 0xf7]
test eax, eax
je 0x4195f9
push 0
push 1
push ebx
push 0x5dd9
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [eax + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x419620
push 0
push 1
push ebx
push 0x5dc6
push eax
call fcn.004083c0
add esp, 0x14
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [ecx + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x419647
push 0
push 1
push ebx
push 0x5dc7
push eax
call fcn.004083c0
add esp, 0x14
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [edx + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x41966e
push 0
push 1
push ebx
push 0x5dc9
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [eax + reloc.MSVCRT.dll_strncpy]
add eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
je 0x419695
push 0
push 1
push ebx
push 0x5dca
push eax
call fcn.004083c0
add esp, 0x14
lea ecx, reloc.MSVCRT.dll_strncpy
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5de2
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 8
mov ecx, 1
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx esi, byte [edx + eax - 0x5cb3]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esi, dword [edx]
je 0x4197a7
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
lea edi, [ebx - 1]
jne 0x419710
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4196f2
mov ax, word [0x5c05a8]
mov word [edi], ax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jmp 0x419722
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419710
mov cx, word [0x5c0580]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419727
sub eax, edx
push 0x5dea
mov edi, eax
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push edx
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c05f4
push eax
call dword [fcn.005c02cc]
mov eax, ebx
add esp, 0x10
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419767
push 0
push 0x80000009
sub eax, edi
push 0xa
lea ecx, [ebx + eax]
push ecx
push esi
call fcn.00567e2f
add esp, 0x14
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419790
mov dx, word [0x5c0584]
mov word [edi], dx
mov ecx, 1
add dword [ebp - reloc.MSVCRT.dll_strncpy], 4
add dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
sub dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jne 0x4196c4
lea eax, reloc.MSVCRT.dll_strncpy
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5de2
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], 8
lea ebx, [ebx]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx esi, byte [eax + edx - 0x5cbc]
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esi, dword [edx]
je 0x4198d7
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
lea edi, [ebx - 1]
jne 0x419840
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419820
mov ax, word [0x5c05a8]
mov word [edi], ax
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jmp 0x419852
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419840
mov cx, word [0x5c0580]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419857
sub eax, edx
push 0x5deb
mov edi, eax
call fcn.00531d80
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 4
push eax
push edx
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x5c05f4
push eax
call dword [fcn.005c02cc]
mov eax, ebx
add esp, 0x10
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419897
push 0
push 0x80000009
sub eax, edi
push 0xa
lea ecx, [ebx + eax]
push ecx
push esi
call fcn.00567e2f
add esp, 0x14
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4198c0
mov dx, word [0x5c0584]
mov word [edi], dx
mov ecx, 1
add dword [ebp - reloc.MSVCRT.dll_strncpy], 4
add dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
sub dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
jne 0x4197f0
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4198f3
mov ax, word [0x5c05a8]
mov word [edi], ax
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419907
mov cx, word [0x5c0820]
mov word [eax], cx
mov dl, byte [0x5c0822]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [ecx + 0xdc]
push 0
push eax
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
push 6
add eax, 0x28
push eax
lea ecx, reloc.MSVCRT.dll_strncpy
push ecx
push ebx
call fcn.00411560
add esp, 0x1c
dec ebx
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x419956
jmp 0x419f2e
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx eax, word [ecx]
cmp eax, 0x1da0
jg 0x419983
je 0x41998a
sub eax, 0x1cf5
je 0x41998a
sub eax, 0x61
je 0x41998a
jmp 0x4199f6
cmp eax, 0xbbae
jne 0x4199f6
cmp byte [ebx], 0
je 0x4199a4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419992
mov dx, word [0x5c05a8]
mov word [edi], dx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4199a7
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
push 0x5ecc
mov byte [eax + 2], dl
call fcn.00531d80
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4199d1
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4199e0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
and eax, 0x200000
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
lea eax, [ebx - 1]
je 0x419a30
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419a10
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
jmp 0x419a48
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419a30
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov esi, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov byte [eax + 2], dl
test dword [esi + reloc.MSVCRT.dll_strncpy], 0x20000000
lea eax, reloc.MSVCRT.dll_strncpy
mov dword [ebp - reloc.MSVCRT.dll_strncpy], eax
jne 0x419de9
mov eax, dword [esi + 0xf7]
test eax, eax
je 0x419aa5
movzx ecx, word [esi + 0x140]
push 0
push 1
lea edx, [ebx + 2]
push edx
push 0x5dd9
test cx, cx
je 0x419a9c
push ecx
push eax
call fcn.00408490
add esp, 0x18
jmp 0x419aa5
push eax
call fcn.004083c0
add esp, 0x14
mov eax, dword [esi + 0xef]
test eax, eax
je 0x419b6b
xor edi, edi
test eax, eax
jns 0x419aec
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
neg eax
cmp dword [ecx + reloc.MSVCRT.dll_strncpy], eax
jae 0x419aec
mov edi, 1
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419ad1
mov dx, word [0x5c0634]
mov word [eax], dx
mov cl, byte [0x5c0636]
mov byte [eax + 2], cl
movzx eax, word [esi + 0x140]
push 0
push 1
lea edx, [ebx + 2]
push edx
push 0x5dda
test ax, ax
je 0x419b17
mov ecx, dword [esi + 0xef]
push eax
push ecx
call fcn.00408490
add esp, 0x18
jmp 0x419b26
mov eax, dword [esi + 0xef]
push eax
call fcn.004083c0
add esp, 0x14
test edi, edi
je 0x419b6b
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
lea eax, [ebx - 1]
je 0x419b50
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419b36
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
jmp 0x419b68
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419b50
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov esi, dword [eax + 0xf3]
test esi, esi
je 0x419cf9
xor ecx, ecx
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
test esi, esi
jns 0x419c8d
cmp byte [ebx], cl
je 0x419ba8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419b96
mov dx, word [0x5c05a8]
mov word [edi], dx
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
movzx edx, word [eax + 0x3c3]
neg esi
cmp edx, esi
jge 0x419bc6
mov ecx, 1
mov dword [ebp - reloc.MSVCRT.dll_strncpy], ecx
mov eax, 0x51eb851f
imul esi
sar edx, 5
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, edi
imul eax, eax, 0x64
sub esi, eax
mov edx, esi
test ecx, ecx
je 0x419c02
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419be7
mov cx, word [0x5c0634]
mov word [eax], cx
mov cl, byte [0x5c0636]
mov byte [eax + 2], cl
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419c07
push edx
sub eax, esi
push edi
push 0x4e41
mov esi, eax
call fcn.00531d80
add esp, 4
push eax
lea edx, [ebx + esi]
mov esi, dword [fcn.005c02cc]
push 0x5c0650
push edx
call esi
add esp, 0x14
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
je 0x419cff
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
lea eax, [ebx - 1]
je 0x419c70
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419c50
mov cx, word [0x5c0630]
mov word [eax], cx
mov dl, byte [0x5c0632]
mov byte [eax + 2], dl
jmp 0x419cff
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419c70
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
jmp 0x419cff
cmp byte [ebx], cl
je 0x419ca5
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419c94
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419cb0
sub eax, edx
mov edi, eax
mov eax, 0x51eb851f
imul esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, eax
imul ecx, ecx, 0x64
sub esi, ecx
push esi
push eax
push 0x4e41
call fcn.00531d80
mov esi, dword [fcn.005c02cc]
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x5c065c
push edx
call esi
add esp, 0x14
jmp 0x419cff
mov esi, dword [fcn.005c02cc]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov al, byte [ecx + 0x154]
test al, al
je 0x419d2e
push 0
push 1
lea ecx, [ebx + 2]
push ecx
movzx edx, al
push 0x5ec5
push edx
call fcn.004083c0
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
add esp, 0x14
cmp byte [ecx + 0x157], 0
je 0x419d88
cmp byte [ebx], 0
je 0x419d51
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419d40
mov ax, word [0x5c05a8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419d56
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
sub eax, edx
movzx edx, byte [ecx + 0x157]
push edx
push 0x535b
mov edi, eax
call fcn.00531d80
add esp, 4
push eax
lea eax, [ebx + edi]
push eax
call esi
add esp, 0xc
jmp 0x419def
cmp byte [ecx + 0x156], 0
je 0x419def
cmp byte [ebx], 0
je 0x419db2
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419da0
mov cx, word [0x5c05a8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419db7
sub eax, edx
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov edi, eax
movzx eax, byte [edx + 0x156]
push eax
push 0x525b
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call esi
add esp, 0xc
jmp 0x419def
mov esi, dword [fcn.005c02cc]
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x419ecb
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
cmp byte [eax + 0x305], 0
je 0x419ecb
mov ecx, dword [eax + reloc.MSVCRT.dll_strncpy]
test ecx, ecx
je 0x419ecb
cmp byte [ebx], 0
je 0x419e37
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419e25
mov dx, word [0x5c05a8]
mov word [edi], dx
lea eax, [ebp - 0x84]
push eax
mov eax, 0x10624dd3
mul ecx
shr edx, 6
push 0x5e75
push edx
call fcn.004a3130
add esp, 0xc
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419e60
mov cx, word [0x5c05ec]
mov word [eax], cx
mov dl, byte [0x5c05ee]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419e80
sub eax, edx
mov edi, eax
lea eax, [ebp - 0x84]
push eax
push 0x5395
call fcn.00531d80
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call esi
add esp, 0xc
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419eb0
mov dx, word [0x5c0674]
mov word [eax], dx
mov cl, byte [0x5c0676]
mov byte [eax + 2], cl
cmp dword [ebp - reloc.MSVCRT.dll_strncpy], 0
jne 0x419ee0
test dword [ebp - reloc.MSVCRT.dll_strncpy], 0x5000000
je 0x419efb
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - reloc.MSVCRT.dll_strncpy]
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
push ebx
push eax
push ecx
call fcn.0040b540
add esp, 0x10
cmp byte [ebx], 0x40
push 0
push 0
push 0
push 1
jne 0x419f15
mov edx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push edx
lea eax, [ebx + 2]
push eax
jmp 0x419f1d
mov ecx, dword [ebp - reloc.MSVCRT.dll_strncpy]
push ecx
push ebx
call fcn.00408780
add esp, 0x18
dec ebx
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x419f26
mov dx, word [0x5c0630]
mov word [ebx], dx
mov al, byte [0x5c0632]
mov byte [ebx + 2], al
pop esi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.0059ea5e
mov esp, ebp
pop ebp
ret