Function at 0x418d50
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d0
mov eax, dword [0x5bb204]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x1b0], eax
movzx eax, word [eax]
push edi
push eax
mov dword [ebp - 0x1bc], 0
call fcn.00486c80
mov edi, eax
add esp, 4
mov dword [ebp - 0x19c], edi
test edi, edi
je 0x41f461
push esi
call fcn.0040edc0
mov esi, dword [edi + 0x8c]
mov ecx, dword [edi + 0x88]
mov edx, dword [edi + 0x90]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1b4], ecx
mov dword [ebp - 0x1c8], esi
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1cc], 0
test esi, 0x2000000
je 0x418df0
mov eax, esi
and eax, 0xfde
or dword [ebp - 0x1b4], eax
mov dword [ebp - 0x1cc], 1
push 4
push edi
call fcn.00487170
add esp, 8
test eax, eax
jne 0x418e0f
test dword [ebp - 0x1b4], 0x82000
je 0x4190f9
test dword [ebp - 0x1b4], 0x80000
jne 0x41f460
movzx eax, word [edi + 0x14e]
test eax, eax
je 0x41f460
push eax
call fcn.00482c20
add esp, 4
mov dword [ebp - 0x1ac], eax
test eax, eax
je 0x41f460
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418e50
mov ecx, dword [edi + 0x7c]
sub eax, edx
push ecx
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5e92
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push 0x59cd70
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp byte [ebx], 0
je 0x418ea1
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418e90
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418ea6
sub eax, edx
push 0x5dc3
mov esi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + esi]
push str._s:1
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp byte [ebx], 0
je 0x418ee8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418ed6
mov dx, word [0x59c7f8]
mov word [edi], dx
mov eax, ebx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418ef0
mov esi, dword [ebp - 0x1ac]
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x14e9]
push eax
push 0x5e94
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push 0x59cd90
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
movsx ecx, byte [esi + 0x14ef]
add esp, 0x10
cmp ecx, 1
jle 0x418f83
cmp byte [ebx], 0
je 0x418f52
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418f40
mov dx, word [0x59c7f8]
mov word [edi], dx
mov eax, ebx
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x418f57
push ecx
sub eax, edi
push 0x5f38
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd90
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp byte [ebx], 0
je 0x418fa2
lea edi, [ebx - 1]
jmp 0x418f90
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418f90
mov cx, word [0x59c7f8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418fa7
sub eax, edx
movzx edx, word [esi + 0x168]
push edx
push 0x5dc6
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd90
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x418fe0
mov cx, word [0x59c7f8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x418ff7
sub eax, edx
movzx edx, word [esi + 0x16a]
push edx
push 0x5dc7
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd90
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419030
mov cx, word [0x59c7f8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419047
sub eax, edx
movzx edx, word [esi + 0x170]
push edx
push 0x5dca
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd90
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419080
mov cx, word [0x59c7f8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419097
sub eax, edx
movzx edx, word [esi + 0x16e]
push edx
push 0x5dc9
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd90
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [esi + 0x188]
push ecx
push 0
push ebx
call fcn.004110a0
add esi, 0x17f
push esi
push 1
push ebx
call fcn.004110a0
add esp, 0x28
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00549540
mov esp, ebp
pop ebp
ret
push 0xea
lea edx, [ebp - 0x194]
push 0
push edx
call fcn.00549550
add esp, 0xc
test byte [0x6978c4], 1
je 0x41917f
mov eax, dword [0x627db8]
dec eax
jne 0x41917f
cmp byte [ebx], al
je 0x419138
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419127
mov ax, word [0x59c7f8]
mov word [edi], ax
lea edi, [ebx - 1]
jmp 0x419140
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419140
mov cx, word [0x59c7f8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419157
sub eax, edx
push 0x5348
mov edi, eax
call fcn.004856b0
push eax
lea edx, [ebx + edi]
push str._2_s_A
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
test esi, 0x800000
je 0x41934d
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x198], 0
test eax, 0x200000
je 0x4191ac
mov dword [ebp - 0x198], 0x5269
test al, 1
je 0x4191ba
mov esi, 0x5ea9
jmp 0x4192aa
test eax, 0x8000000
je 0x4191cb
mov esi, 0x5dcf
jmp 0x4192aa
test eax, 0x1000000
je 0x4191dc
mov esi, 0x5dd0
jmp 0x4192aa
test eax, 0x800000
je 0x4191ed
mov esi, 0x5dd1
jmp 0x4192aa
test eax, 0x2000000
je 0x4191fe
mov esi, 0x5dd2
jmp 0x4192aa
test eax, 0x4000000
je 0x41920f
mov esi, 0x5dd3
jmp 0x4192aa
test eax, 0x400000
je 0x419220
mov esi, 0x5dd4
jmp 0x4192aa
test al, 0x40
je 0x41922b
mov esi, 0x5e45
jmp 0x4192aa
test al, al
jns 0x419236
mov esi, 0x5e44
jmp 0x4192aa
test al, 2
je 0x419241
mov esi, 0x4f5d
jmp 0x4192aa
test al, 4
je 0x41924c
mov esi, 0x4f5c
jmp 0x4192aa
test al, 8
je 0x419257
mov esi, 0x4f5f
jmp 0x4192aa
test al, 0x10
je 0x419262
mov esi, 0x4f63
jmp 0x4192aa
test eax, 0x100
je 0x419270
mov esi, 0x4f64
jmp 0x4192aa
test eax, 0x200
je 0x41927e
mov esi, 0x4f60
jmp 0x4192aa
test eax, 0x400
je 0x41928c
mov esi, 0x4f5e
jmp 0x4192aa
test eax, 0x800
je 0x41929a
mov esi, 0x4f65
jmp 0x4192aa
test eax, 0x100000
je 0x41934d
mov esi, 0x4c4c92
cmp byte [ebx], 0
je 0x4192c3
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4192b2
mov ax, word [0x59c7f8]
mov word [edi], ax
cmp dword [ebp - 0x198], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x419318
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4192d1
sub eax, edx
push esi
mov edi, eax
call fcn.004856b0
mov ecx, dword [ebp - 0x198]
add esp, 4
push eax
push ecx
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push str._s_s_s
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x41934d
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419318
sub eax, edx
push esi
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cc54
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov ecx, dword [ebp - 0x1b4]
mov eax, ecx
and eax, 1
mov dword [ebp - 0x1d0], eax
je 0x41953b
cmp byte [ebx], 0
je 0x419382
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419370
mov cx, word [0x59c7f8]
mov word [edi], cx
cmp dword [ebp - 0x1cc], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x4193e0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419390
sub eax, edx
push 0x4f61
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5269
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push str._s_3_s_s_1
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x419419
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4193e0
sub eax, edx
push 0x4f61
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + esi]
push 0x59cc54
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419420
mov cx, word [0x59c7f8]
push 0x5dce
mov word [edi], cx
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419441
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
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
mov eax, dword [ebp - 0x1b4]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, 2
test eax, 0x8000000
je 0x419482
push ebx
xor esi, esi
push 0x5dcf
jmp 0x4194d6
test eax, 0x1000000
je 0x419496
push ebx
mov esi, 1
push 0x5dd0
jmp 0x4194d6
test eax, 0x800000
je 0x4194a5
push ebx
push 0x5dd1
jmp 0x4194d6
test eax, 0x2000000
je 0x4194b4
push ebx
push 0x5dd2
jmp 0x4194d6
test eax, 0x4000000
je 0x4194c5
push ebx
xor esi, esi
push 0x5dd3
jmp 0x4194d6
test eax, 0x10400000
je 0x419cc9
push ebx
push 0x5dd4
push 0
call fcn.0040f730
add esp, 0xc
cmp byte [ebx], 0
je 0x4194fa
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4194e8
mov dx, word [0x59c7f8]
mov word [edi], dx
add esi, 0x5e50
push esi
call fcn.004856b0
add esp, 4
mov esi, eax
jmp 0x419510
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419510
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419520
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 0x419cc9
test cl, 0xc0
je 0x419682
cmp byte [ebx], 0
je 0x419561
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419550
mov ax, word [0x59c7f8]
mov word [edi], ax
cmp dword [ebp - 0x1cc], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x4195c0
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419570
sub eax, edx
push 0x4f62
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5269
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push str._s_3_s_s_1
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x4195f9
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4195c0
sub eax, edx
push 0x4f62
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push 0x59cc54
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419600
mov ax, word [0x59c7f8]
push 0x5e43
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419620
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419630
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 0x419665
push ebx
push 0x5e44
push 0
call fcn.0040f730
add esp, 0xc
jmp 0x419cc9
test al, 0x40
je 0x419cc9
push ebx
push 0x5e45
push 0
call fcn.0040f730
add esp, 0xc
jmp 0x419cc9
test ecx, 0x1000
je 0x419691
mov esi, 0x4f62
jmp 0x419710
test cl, 2
je 0x41969d
mov esi, 0x4f5d
jmp 0x419710
test cl, 4
je 0x4196a9
mov esi, 0x4f5c
jmp 0x419710
test cl, 8
je 0x4196b5
mov esi, 0x4f5f
jmp 0x419710
test cl, 0x10
je 0x4196d2
mov esi, dword [ebp - 0x1cc]
neg esi
sbb esi, esi
and esi, 0x307
add esi, 0x4f63
jmp 0x419710
test ecx, 0x100
je 0x4196e1
mov esi, 0x4f64
jmp 0x419710
test ecx, 0x200
je 0x4196f0
mov esi, 0x4f60
jmp 0x419710
test ecx, 0x400
je 0x4196ff
mov esi, 0x4f5e
jmp 0x419710
test ecx, 0x800
je 0x4197b1
mov esi, 0x4f65
cmp byte [ebx], 0
je 0x41972a
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419718
mov cx, word [0x59c7f8]
mov word [edi], cx
cmp dword [ebp - 0x1cc], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x419780
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419738
sub eax, edx
push esi
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5269
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push str._s_3_s_s_1
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x419cc9
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419780
sub eax, edx
push esi
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
push 0x59cc54
lea eax, [ebx + edi]
push eax
jmp 0x419cc0
test ecx, 0x20000
je 0x419980
cmp byte [ebx], 0
je 0x4197d7
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4197c5
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0
call fcn.0054a62b
mov esi, dword [ebp - 0x1b0]
add esp, 4
cmp eax, dword [esi + 0x23]
mov dword [ebp - 0x1c0], edx
lea eax, [ebx - 1]
jbe 0x419810
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4197f5
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
jmp 0x419828
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419810
mov dx, word [0x59cc4c]
mov word [eax], dx
mov cl, byte [0x59cc4e]
mov byte [eax + 2], cl
mov eax, dword [esi + 0x23]
test eax, eax
jne 0x41987d
lea ecx, [eax - 0x76c]
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 - 0x1a4], edx
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0x98], eax
jmp 0x41988c
push eax
call fcn.00440ce0
add esp, 4
mov dword [ebp - 0x1a4], eax
push 0x5e7a
call fcn.004856b0
add esp, 4
mov esi, eax
jmp 0x4198a0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4198a0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4198b0
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 0x4198d0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4198d0
sub eax, esi
mov esi, eax
mov eax, dword [ebp - 0x1a4]
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.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x1c
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419920
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov edx, dword [ebp - 0x19c]
mov byte [eax + 2], cl
movzx eax, word [edx + 0x95]
push 3
push eax
push ebx
push 0
push 0
call fcn.00414f80
add esp, 0x14
lea eax, [ebx - 1]
jmp 0x419960
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419960
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
jmp 0x419cc9
test ecx, 0x100000
je 0x419b9c
mov eax, dword [ebp - 0x1b0]
movzx esi, word [eax + 0x25]
test esi, esi
je 0x4199e5
mov edx, 0x13e2
cmp word [eax], dx
je 0x4199e5
cmp byte [ebx], 0
je 0x4199c1
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4199b0
mov ax, word [0x59c7f8]
mov word [edi], ax
push esi
push 0x5e83
call fcn.004856b0
add esp, 4
push eax
push 0x59cd90
push ebx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebp - 0x1b4]
add esp, 0x10
cmp byte [ebx], 0
je 0x419a02
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4199f0
mov dx, word [0x59c7f8]
mov word [edi], dx
lea eax, [ebx - 1]
mov dl, byte [eax + 1]
inc eax
test dl, dl
jne 0x419a05
mov dx, word [0x59cc90]
mov word [eax], dx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
xor eax, eax
test ecx, ecx
jns 0x419a2e
push ebx
push 0x5dd5
jmp 0x419a40
test dword [ebp - 0x1c8], 0x20000000
je 0x419a50
push ebx
push 0x5f19
push 0
call fcn.0040f730
mov ecx, dword [ebp - 0x1b4]
add esp, 0xc
test ecx, 0x40000000
je 0x419a67
push ebx
push 0x5dd6
push eax
call fcn.0040f730
add esp, 0xc
push ebx
push 0x5e82
push eax
call fcn.0040f730
add esp, 0xc
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419a80
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1b0]
cmp byte [eax + 0x27], 2
jne 0x419b47
cmp byte [ebx], 0
je 0x419ac5
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419ab3
mov cx, word [0x59c7f8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419ad0
sub eax, edx
push esi
push 0x5e84
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push str._2_s_1
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419b00
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419b16
mov ecx, dword [ebp - 0x1b0]
sub eax, edx
push 0x20
add ecx, 0x28
push ecx
add ebx, eax
push ebx
call fcn.00548360
add esp, 0xc
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00549540
mov esp, ebp
pop ebp
ret
push 0x1000
call fcn.00426240
add esp, 4
test eax, eax
je 0x41f460
cmp byte [ebx], 0
je 0x419b76
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419b64
mov dx, word [0x59c7f8]
mov word [edi], dx
mov eax, dword [ebp - 0x1b0]
push 0x20
add eax, 0x28
push eax
push ebx
call fcn.00548360
add esp, 0xc
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00549540
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x1c8]
test eax, 0x10000000
je 0x419c0e
cmp byte [ebx], 0
je 0x419bc3
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419bb1
mov cx, word [0x59c7f8]
mov word [edi], cx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419bc6
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov edx, dword [ebp - 0x19c]
mov byte [eax + 2], cl
movzx eax, word [edx + 0x95]
push 3
push eax
push ebx
push 0
push 0
call fcn.00414f80
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419c01
jmp 0x419968
test eax, 0x100000
je 0x419ccf
cmp byte [ebx], 0
je 0x419c32
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419c21
mov ax, word [0x59c7f8]
mov word [edi], ax
cmp dword [ebp - 0x1cc], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x419c90
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419c40
sub eax, edx
push 0x4c4c92
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5269
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push str._s_3_s_s_1
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x419cc9
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419c90
sub eax, edx
push 0x4c4c92
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5e6d
call fcn.004856b0
add esp, 4
push eax
push 0x59cc54
lea edx, [ebx + esi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov ecx, dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x1b0]
movzx eax, word [eax + 0xc]
mov dword [ebp - 0x1a0], eax
test eax, eax
je 0x419e6c
cmp byte [ebx], 0
je 0x419d02
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419cf0
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0x5dc0
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419d11
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419d20
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 0x419d40
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419d40
mov edx, dword [ebp - 0x1a0]
push edx
sub eax, esi
add eax, ebx
push 0x59c660
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419d64
mov cx, word [0x59cd6c]
mov word [eax], cx
mov dl, byte [0x59cd6e]
push 0x5dd7
mov byte [eax + 2], dl
call fcn.004856b0
add esp, 4
mov esi, eax
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419d90
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x419da0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - 0x19c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movzx ecx, word [eax + 0x99]
imul ecx, dword [ebp - 0x1a0]
push 1
push 0x64
push ecx
call fcn.00440f20
mov eax, ebx
add esp, 0xc
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419ddc
sub eax, esi
push 2
lea edx, [ebx + eax]
push edx
sub esp, 8
fstp qword [esp]
call fcn.00440f90
add esp, 0x10
cmp dword [ebp - 0x1a0], 1
jle 0x419e66
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419e05
mov ax, word [0x59cfb4]
mov ecx, dword [ebp - 0x19c]
mov word [edi], ax
movzx edx, word [ecx + 0x99]
push 1
push 0x64
push edx
call fcn.00440f20
mov eax, ebx
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419e35
sub eax, edx
push 2
add eax, ebx
push eax
sub esp, 8
fstp qword [esp]
call fcn.00440f90
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419e54
mov cx, word [0x59cc18]
mov word [edi], cx
mov ecx, dword [ebp - 0x1b4]
mov dword [ebp - 0x1ac], 0
test ecx, 0x20000000
je 0x41a549
mov esi, dword [ebp - 0x19c]
movzx edi, word [esi + 0x14e]
mov dword [ebp - 0x1a0], edi
test edi, edi
je 0x41c88b
test dword [ebp - 0x1b4], 0x200000
jne 0x41c88b
push 0
push edi
call fcn.00488600
add esp, 8
mov dword [ebp - 0x1a4], eax
test eax, eax
je 0x41c88b
cmp edi, 0xffff
jne 0x419f2f
cmp byte [ebx], 0
je 0x419ee8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419ed6
mov dx, word [0x59c7f8]
mov word [edi], dx
lea eax, [ebx - 1]
jmp 0x419ef0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419ef0
mov cx, word [0x59cc4c]
push 0
push 0
push ebx
mov word [eax], cx
mov dl, byte [0x59cc4e]
push 0x5e07
push 1
mov byte [eax + 2], dl
call fcn.0040f8d0
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419f22
jmp 0x41c61d
movzx eax, word [esi + 0x150]
mov dword [ebp - 0x198], eax
test eax, eax
jle 0x41a258
mov eax, dword [ebp - 0x1b0]
push ebx
push esi
push eax
call fcn.00411740
movzx eax, word [esi + 0x15a]
add esp, 0xc
test ax, ax
je 0x41a003
mov ecx, dword [ebp - 0x1b8]
cmp word [ecx + 0x3bd], ax
jae 0x419f92
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419f77
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x419f97
sub eax, edx
movzx edx, word [esi + 0x15a]
push edx
push 0x5f2f
mov edi, eax
call fcn.004856b0
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd90
push eax
call esi
add esp, 0x10
lea eax, [ebx - 1]
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x419fd0
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x419ff0
mov ax, word [0x59c7f8]
mov word [edi], ax
jmp 0x41a009
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a010
mov cx, word [0x59c7f8]
mov word [edi], cx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a025
mov dx, word [0x59cc4c]
mov word [eax], dx
mov cl, byte [0x59cc4e]
mov edx, dword [ebp - 0x1a4]
mov byte [eax + 2], cl
mov eax, dword [edx + 8]
cmp eax, 2
jne 0x41a0a1
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a053
sub eax, edx
mov edi, eax
mov eax, dword [ebp - 0x198]
push eax
push 0x5f2d
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call esi
push 0x4e33
call fcn.004856b0
add esp, 0x10
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a088
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41a094
jmp 0x41a128
cmp eax, 1
jne 0x41a0fa
mov eax, ebx
lea edx, [eax + 1]
jmp 0x41a0b0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a0b0
sub eax, edx
mov edx, dword [ebp - 0x198]
push edx
push 0x5f2d
lea edi, [ebx + eax]
call fcn.004856b0
add esp, 4
push eax
push edi
call esi
push 0x4e34
call fcn.004856b0
add esp, 0x10
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a0e3
sub eax, esi
lea edi, [ebx - 1]
nop
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41a0f0
jmp 0x41a128
cmp eax, 4
jne 0x41a13c
push 0x5f32
call fcn.004856b0
add esp, 4
mov esi, eax
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a110
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41a120
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 [sym.imp.USER32.dll_wsprintfA]
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a141
sub eax, edx
mov edi, eax
mov eax, dword [ebp - 0x1a4]
mov ecx, dword [eax + 4]
push ecx
call fcn.004856b0
push eax
lea edx, [ebx + edi]
push 0x59cfb0
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 0x41a170
mov ax, word [0x59c7f8]
mov ecx, dword [ebp - 0x1a4]
mov word [edi], ax
cmp dword [ecx + 8], 4
mov eax, ebx
lea edx, [eax + 1]
jne 0x41a1f7
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a192
sub eax, edx
mov edx, dword [ebp - 0x198]
push edx
push 0x5f31
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd2c
push eax
call esi
add esp, 0x10
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a1c3
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a1e1
mov ax, word [0x59c7f8]
mov word [edi], ax
jmp 0x41c88b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a1f7
mov ecx, dword [ebp - 0x198]
dec ecx
push ecx
sub eax, edx
push 0x5f2e
mov edi, eax
call fcn.004856b0
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 0x41a224
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a242
mov ax, word [0x59c7f8]
mov word [edi], ax
jmp 0x41c88b
cmp byte [ebx], 0
je 0x41a278
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a260
mov cx, word [0x59c7f8]
mov word [edi], cx
mov edi, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x1b8]
movzx eax, byte [edx + 0x338]
push edi
push eax
call fcn.00487d70
mov esi, eax
add esp, 8
mov dword [ebp - 0x1a4], esi
test esi, esi
je 0x41a415
cmp dword [esi + 4], 0
je 0x41a415
cmp edi, 0x384
jge 0x41a311
mov ecx, dword [ebp - 0x1b8]
cmp byte [edi + ecx + 0x1ae6], 0
je 0x41a311
push 0x5298
call fcn.004856b0
add esp, 4
test eax, eax
je 0x41a311
cmp byte [eax], 0
je 0x41a311
mov ecx, ebx
lea edi, [ecx + 1]
lea esp, [esp]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x41a2e0
push eax
sub ecx, edi
lea edx, [ebx + ecx]
push str._3_s_A
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a300
mov ax, word [0x59c7f8]
mov word [edi], ax
mov edi, dword [esi + 8]
test edi, edi
jle 0x41a3ac
cmp edi, 3
jge 0x41a3ac
mov ecx, dword [ebp - 0x1b8]
movzx edx, byte [ecx + 0x11d2]
mov eax, ebx
cmp edx, edi
lea edx, [eax + 1]
jl 0x41a365
jmp 0x41a340
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a340
sub eax, edx
push edi
push 0x4c4bb8
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x59cd2c
lea eax, [ebx + esi]
push eax
jmp 0x41a388
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a365
sub eax, edx
push edi
push 0x4c4bb8
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push str._2_s_d_1
lea ecx, [ebx + esi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a394
mov dx, word [0x59c7f8]
mov esi, dword [ebp - 0x1a4]
mov word [edi], dx
mov eax, dword [ebp - 0x1b8]
movzx ecx, word [eax + 0x3cb]
mov edx, dword [esi + 4]
mov eax, ebx
lea esi, [eax + 1]
cmp ecx, edx
jl 0x41a3f0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a3c5
push edx
sub eax, esi
push 0x5e1d
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x59cd2c
lea edx, [ebx + edi]
push edx
jmp 0x41a43f
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a3f0
push edx
sub eax, esi
push 0x5e1d
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
push str._2_s_d_1
lea eax, [ebx + edi]
push eax
jmp 0x41a43f
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a420
sub eax, edx
push 0x5e1e
mov esi, eax
call fcn.004856b0
push eax
push str._2_s_1
lea ecx, [ebx + esi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp byte [ebx], 0
je 0x41a462
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a450
mov dx, word [0x59c7f8]
mov word [edi], dx
mov esi, 1
mov eax, dword [ebp - 0x1a0]
push eax
push esi
call fcn.00487d70
add esp, 8
cmp dword [ebp - 0x198], 0
mov dword [ebp - 0x1a4], eax
je 0x41a4a4
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41a490
mov cx, word [0x59cbe4]
mov word [edi], cx
jmp 0x41a4ae
mov dword [ebp - 0x198], 1
test eax, eax
je 0x41a4f4
mov eax, dword [eax + 4]
test eax, eax
je 0x41a4f4
mov ecx, ebx
lea edi, [ecx + 1]
mov edi, edi
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x41a4c0
mov edx, dword [ebp - 0x1a4]
push eax
mov eax, dword [edx + 8]
push eax
sub ecx, edi
push esi
mov edi, ecx
call fcn.004f9d50
add esp, 8
push eax
lea ecx, [ebx + edi]
push str._s:_d
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x41a526
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a500
sub eax, edx
push 0
push esi
mov edi, eax
call fcn.004f9d50
push eax
lea edx, [ebx + edi]
push str._s:__
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
inc esi
cmp esi, 8
jle 0x41a467
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a533
mov ax, word [0x59cc18]
mov word [edi], ax
jmp 0x41c88b
test ecx, 0x4000
je 0x41abb1
mov ecx, dword [ebp - 0x19c]
movzx eax, word [ecx + 0x14e]
mov dword [ebp - 0x1a0], eax
test eax, eax
je 0x41c88b
push eax
call fcn.00482cf0
add esp, 4
mov dword [ebp - 0x1a4], eax
test eax, eax
je 0x41c88b
cmp byte [ebx], 0
mov dword [ebp - 0x1ac], 1
je 0x41a5b2
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a5a0
mov dx, word [0x59c7f8]
mov word [edi], dx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a5b5
mov cx, word [0x59cc4c]
mov word [eax], cx
mov dl, byte [0x59cc4e]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a5d5
sub eax, edx
mov edi, eax
mov eax, dword [ebp - 0x1a4]
mov ecx, dword [eax + 4]
push ecx
call fcn.004856b0
add esp, 4
push eax
push 0x5ea7
call fcn.004856b0
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
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 0x41a613
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1a4]
cmp word [eax + 0x7a], 0
je 0x41a689
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a640
mov cx, word [0x59c7f8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a657
sub eax, edx
mov edx, dword [ebp - 0x1a4]
mov edi, eax
movzx eax, word [edx + 0x7a]
push eax
push 0x5357
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push str._6_s:_d_A
push ecx
call esi
add esp, 0x10
mov edx, dword [ebp - 0x1a4]
cmp word [edx + 0x78], 0
je 0x41a6e8
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a6a0
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a6b6
mov ecx, dword [ebp - 0x1a4]
sub eax, edx
movzx edx, word [ecx + 0x78]
push edx
push 0x5f24
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push str._6_s:_d_A
push eax
call esi
add esp, 0x10
mov ecx, dword [ebp - 0x1b8]
mov edx, dword [ebp - 0x1a0]
add ecx, 0xdee
push ecx
push edx
call fcn.0047a6b0
add esp, 8
test eax, eax
je 0x41a758
push 0x5299
call fcn.004856b0
add esp, 4
test eax, eax
je 0x41a758
cmp byte [eax], 0
je 0x41a758
cmp byte [ebx], 0
je 0x41a738
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41a726
mov cx, word [0x59c7f8]
mov word [edi], cx
mov ecx, ebx
lea edi, [ecx + 1]
lea ecx, [ecx]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x41a740
push eax
sub ecx, edi
lea edx, [ebx + ecx]
push str._3_s_A
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - 0x19c]
movzx eax, byte [eax + 0xda]
mov dword [ebp - 0x1a0], eax
test eax, eax
je 0x41a9bd
cmp al, 0xff
je 0x41a9bd
cmp byte [ebx], 0
je 0x41a795
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41a783
mov cx, word [0x59c7f8]
mov word [edi], cx
mov edx, dword [ebp - 0x1b8]
mov dword [ebp - 0x1a8], 0
movzx eax, byte [edx + 0x338]
test eax, eax
je 0x41a7eb
lea ecx, [eax - 1]
mov eax, 1
shl eax, cl
test dword [ebp - 0x1a0], eax
jne 0x41a7eb
mov dword [ebp - 0x1a8], 1
lea eax, [ebx - 1]
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a7d0
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
push 0x5dcc
call fcn.004856b0
add esp, 4
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41a800
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41a810
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 0x41a856
mov edx, dword [ebp - 0x19c]
movzx eax, byte [edx + 0xdc]
push ebx
push eax
push 1
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 2
je 0x41a884
mov ecx, dword [ebp - 0x19c]
movzx edx, byte [ecx + 0xdc]
push ebx
push edx
push 2
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 4
je 0x41a8b2
mov eax, dword [ebp - 0x19c]
movzx ecx, byte [eax + 0xdc]
push ebx
push ecx
push 3
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 8
je 0x41a8e0
mov edx, dword [ebp - 0x19c]
movzx eax, byte [edx + 0xdc]
push ebx
push eax
push 4
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 0x10
je 0x41a90e
mov ecx, dword [ebp - 0x19c]
movzx edx, byte [ecx + 0xdc]
push ebx
push edx
push 5
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 0x20
je 0x41a93c
mov eax, dword [ebp - 0x19c]
movzx ecx, byte [eax + 0xdc]
push ebx
push ecx
push 6
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 0x40
je 0x41a96a
mov edx, dword [ebp - 0x19c]
movzx eax, byte [edx + 0xdc]
push ebx
push eax
push 7
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
mov esi, eax
test byte [ebp - 0x1a0], 0x80
je 0x41a996
mov ecx, dword [ebp - 0x19c]
movzx edx, byte [ecx + 0xdc]
push ebx
push edx
push 8
call fcn.004f9ca0
add esp, 8
push eax
push esi
call fcn.0040f730
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
je 0x41a9bd
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41a9a2
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x19c]
cmp word [eax + 0xd8], 1
ja 0x41aa2b
mov ecx, dword [ebp - 0x1b0]
cmp byte [ecx + 0x47], 0
jne 0x41aa2b
cmp byte [eax + 0xdb], 0
jne 0x41aa2b
cmp byte [eax + 0xdc], 0
jne 0x41aa2b
cmp word [eax + 0xdd], 0
jne 0x41aa2b
cmp word [eax + 0xdf], 0
jne 0x41aa2b
cmp word [eax + 0xe1], 0
jne 0x41aa2b
cmp word [eax + 0xe3], 0
jne 0x41aa2b
cmp word [eax + 0xe5], 0
jne 0x41aa2b
cmp word [eax + 0xe7], 0
je 0x41b38e
cmp byte [ebx], 0
je 0x41aa45
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41aa33
mov dx, word [0x59c7f8]
mov word [edi], dx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41aa48
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41aa68
sub eax, edx
push 0x5dc2
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a8], 0
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41aa90
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41aaa0
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 0x41aac0
mov cx, word [0x59cc8c]
mov edi, dword [ebp - 0x19c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1b0]
movzx ecx, word [edi + 0xd8]
movsx eax, byte [eax + 0x47]
add eax, ecx
xor esi, esi
mov ecx, 1
mov dword [ebp - 0x198], esi
mov dword [ebp - 0x1a0], eax
cmp eax, ecx
jge 0x41ab11
mov dword [ebp - 0x1a0], ecx
mov al, byte [edi + 0xdc]
test al, al
je 0x41acab
mov edx, dword [ebp - 0x1b8]
cmp byte [edx + 0x11d2], al
jae 0x41ab51
add dword [ebp - 0x1a8], ecx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ab36
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
cmp byte [edi + 0xdc], 3
push ebx
jae 0x41ac66
push 0x4c4bb7
push 0
call fcn.0040f730
mov esi, eax
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
mov dword [ebp - 0x198], esi
lea edx, [eax + 1]
je 0x41ac40
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ab88
sub eax, edx
mov ecx, edi
movzx edx, byte [ecx + 0xdc]
push edx
add eax, ebx
push str._d_1
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x41acab
test ecx, 0x40000
jne 0x41c88b
test dword [ebp - 0x1c8], 0x100000
je 0x41a758
mov edx, dword [ebp - 0x19c]
cmp word [edx + 0xe7], 0
je 0x41c88b
cmp byte [ebx], 0
je 0x41ac01
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41abf0
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ac06
movzx ecx, word [edx + 0xe7]
push ecx
sub eax, esi
push 0x5e94
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push 0x59cd90
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x41c88b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ac40
sub eax, edx
mov ecx, edi
movzx edx, byte [ecx + 0xdc]
push edx
add eax, ebx
push 0x59c660
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x41acab
push 0x4c4c74
push 0
call fcn.0040f730
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov esi, eax
mov dword [ebp - 0x198], esi
je 0x41acab
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ac90
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
mov eax, edi
movzx eax, word [eax + 0xd8]
cmp eax, 1
ja 0x41acc9
mov ecx, dword [ebp - 0x1b0]
cmp byte [ecx + 0x47], 0
je 0x41ade2
mov ecx, dword [ebp - 0x1b0]
movzx edx, word [ecx + 0x49]
movsx ecx, byte [ecx + 0x47]
sub eax, edx
mov edx, dword [ebp - 0x1b8]
add eax, ecx
movzx ecx, word [edx + 0x3cb]
cmp ecx, eax
jge 0x41ad10
inc dword [ebp - 0x1a8]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41acf5
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
push ebx
push 0x5dc3
push esi
call fcn.0040f730
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov dword [ebp - 0x198], eax
je 0x41ad4c
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ad31
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [edx + 0x47]
test eax, eax
mov eax, ebx
lea edx, [eax + 1]
jns 0x41ad8e
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ad60
sub eax, edx
mov ecx, edi
movzx edx, word [ecx + 0xd8]
mov ecx, dword [ebp - 0x1a0]
push edx
push ecx
lea edx, [ebx + eax]
push str._3_d_1__d_
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x41ade2
jle 0x41adc0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ad90
sub eax, edx
mov ecx, edi
movzx edx, word [ecx + 0xd8]
mov ecx, dword [ebp - 0x1a0]
push edx
push ecx
lea edx, [ebx + eax]
push str._2_d_1__d_
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x41ade2
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41adc0
mov ecx, dword [ebp - 0x1a0]
push ecx
sub eax, edx
lea edx, [ebx + eax]
push 0x59c660
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov eax, dword [ebp - 0x1b0]
movzx edx, word [eax + 0x49]
test dx, dx
je 0x41ae16
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41adf6
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
push edx
sub eax, edi
lea edx, [ebx + eax]
push str._3___d__1
push edx
call esi
add esp, 0xc
jmp 0x41ae1c
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
mov eax, dword [ebp - 0x19c]
movzx edi, word [eax + 0xdd]
test edi, edi
je 0x41aec8
mov eax, dword [ebp - 0x1b8]
movsx ecx, word [eax + 0x49d]
movzx edx, word [eax + 0x491]
add ecx, edx
cmp ecx, edi
jge 0x41ae6f
inc dword [ebp - 0x1a8]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ae54
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x198]
push ebx
push 0x5dc6
push eax
call fcn.0040f730
mov dword [ebp - 0x198], eax
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x41aeb0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ae98
push edi
sub eax, edx
push str._d_1
lea ecx, [ebx + eax]
push ecx
jmp 0x41aec3
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41aeb0
push edi
sub eax, edx
push 0x59c660
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - 0x19c]
movzx edi, word [eax + 0xdf]
test edi, edi
je 0x41af8c
mov ecx, dword [ebp - 0x1b8]
add ecx, 0x32c
push ecx
call fcn.00479590
mov ecx, dword [ebp - 0x1b8]
movsx edx, word [ecx + 0x49f]
movzx ecx, word [ecx + 0x493]
add edx, ecx
sub edx, eax
add esp, 4
cmp edx, edi
jge 0x41af32
inc dword [ebp - 0x1a8]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41af17
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
mov edx, dword [ebp - 0x198]
push ebx
push 0x5dc7
push edx
call fcn.0040f730
mov dword [ebp - 0x198], eax
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x41af74
jmp 0x41af60
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41af60
push edi
sub eax, edx
push str._d_1
add eax, ebx
push eax
jmp 0x41af87
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41af74
push edi
sub eax, edx
push 0x59c660
lea ecx, [ebx + eax]
push ecx
call esi
add esp, 0xc
mov edx, dword [ebp - 0x19c]
movzx edi, word [edx + 0xe1]
test edi, edi
je 0x41b038
mov eax, dword [ebp - 0x1b8]
movsx ecx, word [eax + 0x4a1]
movzx edx, word [eax + 0x495]
add ecx, edx
cmp ecx, edi
jge 0x41afdf
inc dword [ebp - 0x1a8]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41afc4
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x198]
push ebx
push 0x5dc8
push eax
call fcn.0040f730
mov dword [ebp - 0x198], eax
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x41b020
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b008
push edi
sub eax, edx
push str._d_1
lea ecx, [ebx + eax]
push ecx
jmp 0x41b033
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b020
push edi
sub eax, edx
push 0x59c660
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - 0x19c]
movzx edi, word [eax + 0xe3]
test edi, edi
je 0x41b0e8
mov eax, dword [ebp - 0x1b8]
movsx ecx, word [eax + 0x4a3]
movzx edx, word [eax + 0x497]
add ecx, edx
cmp ecx, edi
jge 0x41b08b
inc dword [ebp - 0x1a8]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41b070
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x198]
push ebx
push 0x5dc9
push eax
call fcn.0040f730
mov dword [ebp - 0x198], eax
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x41b0d0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b0b4
push edi
sub eax, edx
push str._d_1
lea ecx, [ebx + eax]
push ecx
jmp 0x41b0e3
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b0d0
push edi
sub eax, edx
push 0x59c660
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - 0x19c]
movzx edi, word [eax + 0xe5]
test edi, edi
je 0x41b198
mov eax, dword [ebp - 0x1b8]
movsx ecx, word [eax + 0x4a5]
movzx edx, word [eax + 0x499]
add ecx, edx
cmp ecx, edi
jge 0x41b13b
inc dword [ebp - 0x1a8]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41b120
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x198]
push ebx
push 0x5dca
push eax
call fcn.0040f730
mov dword [ebp - 0x198], eax
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x41b180
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b164
push edi
sub eax, edx
push str._d_1
lea ecx, [ebx + eax]
push ecx
jmp 0x41b193
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b180
push edi
sub eax, edx
push 0x59c660
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - 0x19c]
movzx edi, word [eax + 0xe7]
test edi, edi
je 0x41b248
mov eax, dword [ebp - 0x1b8]
movsx ecx, word [eax + 0x4a7]
movzx edx, word [eax + 0x49b]
add ecx, edx
cmp ecx, edi
jge 0x41b1eb
inc dword [ebp - 0x1a8]
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41b1d0
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x198]
push ebx
push 0x5dcb
push eax
call fcn.0040f730
mov dword [ebp - 0x198], eax
add esp, 0xc
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
lea edx, [eax + 1]
je 0x41b230
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b214
push edi
sub eax, edx
push str._d_1
lea ecx, [ebx + eax]
push ecx
jmp 0x41b243
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b230
push edi
sub eax, edx
push 0x59c660
lea edx, [ebx + eax]
push edx
call esi
add esp, 0xc
mov eax, dword [ebp - 0x19c]
movzx eax, byte [eax + 0xdb]
test eax, eax
je 0x41b37a
test al, 1
je 0x41b2e1
mov ecx, dword [ebp - 0x1b8]
test byte [ecx + 0x369], al
je 0x41b28d
mov edx, dword [ebp - 0x198]
push ebx
push 0x5dc5
push edx
call fcn.0040f730
add esp, 0xc
jmp 0x41b37a
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41b290
cmp dword [ebp - 0x198], 0
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
je 0x41b2c8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b2b7
mov ax, word [0x59cbe4]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b2d0
push 0x5dc5
jmp 0x41b35c
mov edx, dword [ebp - 0x1b8]
test byte [edx + 0x369], al
je 0x41b309
mov eax, dword [ebp - 0x198]
push ebx
push 0x5dc4
push eax
call fcn.0040f730
add esp, 0xc
jmp 0x41b37a
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41b310
cmp dword [ebp - 0x198], 0
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
je 0x41b348
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b337
mov ax, word [0x59cbe4]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b350
push 0x5dc4
sub eax, edx
mov edi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + edi]
push str._s_1
push ecx
call esi
add esp, 0x10
inc dword [ebp - 0x1a8]
cmp dword [ebp - 0x1a8], 0
je 0x41b38e
mov edx, dword [ebp - 0x1a4]
mov byte [ebx + edx - 1], 0x32
cmp dword [ebp - 0x1ac], 0
jne 0x41c88b
mov eax, dword [ebp - 0x19c]
movzx eax, word [eax + 0x14e]
mov dword [ebp - 0x1a0], eax
test eax, eax
je 0x41c88b
cmp byte [ebx], 0
je 0x41b3d2
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b3c0
mov cx, word [0x59c7f8]
mov word [edi], cx
mov esi, dword [ebp - 0x19c]
mov edi, dword [esi + 0x156]
mov dword [ebp - 0x198], edi
test edi, edi
jne 0x41b3f3
mov edi, 0xe10
mov dword [ebp - 0x198], edi
mov edx, dword [ebp - 0x1b4]
mov eax, edx
and eax, 0x200000
mov dword [ebp - 0x1a4], eax
lea eax, [ebx - 1]
je 0x41b430
jmp 0x41b410
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41b410
mov cx, word [0x59cc8c]
mov word [eax], cx
mov cl, byte [0x59cc8e]
jmp 0x41b448
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41b430
mov cx, word [0x59cc4c]
mov word [eax], cx
mov cl, byte [0x59cc4e]
mov byte [eax + 2], cl
mov ecx, dword [ebp - 0x1a0]
lea eax, [ecx - 0xffd4]
cmp eax, 0x2a
ja case.0x41b460.65501
jmp dword [eax*4 + 0x41f474]
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b470
sub eax, edx
movzx edx, word [esi + 0x150]
push edx
push 0x5e54
mov dword [ebp - 0x1ac], eax
call fcn.004856b0
add esp, 4
push eax
mov eax, dword [ebp - 0x1ac]
lea ecx, [ebx + eax]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
test edi, edi
je 0x41c665
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b4b3
mov dx, word [0x59c7f8]
push 0x5e74
mov word [edi], dx
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b4d4
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b4e0
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 0x41b500
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b500
mov ecx, dword [ebp - 0x198]
sub eax, edx
add eax, ebx
push eax
push 0x5e75
push ecx
call fcn.00440ba0
jmp 0x41c662
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b527
sub eax, edx
movzx edx, word [esi + 0x150]
push edx
push 0x5e55
mov dword [ebp - 0x1ac], eax
call fcn.004856b0
add esp, 4
push eax
mov eax, dword [ebp - 0x1ac]
lea ecx, [ebx + eax]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
test edi, edi
je 0x41c665
lea edi, [ebx - 1]
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b570
mov dx, word [0x59c7f8]
push 0x5e74
mov word [edi], dx
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b591
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b5a0
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 0x41b5c0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b5c0
sub eax, edx
add eax, ebx
push eax
mov eax, dword [ebp - 0x198]
push 0x5e75
push eax
call fcn.00440ba0
jmp 0x41c662
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b5e7
movzx ecx, word [esi + 0x150]
push ecx
sub eax, edx
push 0x5394
mov dword [ebp - 0x1ac], eax
call fcn.004856b0
mov edx, dword [ebp - 0x1ac]
add esp, 4
push eax
add edx, ebx
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
test edi, edi
je 0x41c665
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b630
mov ax, word [0x59c7f8]
push 0x5e74
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b650
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b660
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 0x41b680
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b680
sub eax, edx
mov edx, dword [ebp - 0x198]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.00440ba0
jmp 0x41c662
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b6a8
sub eax, edx
mov dword [ebp - 0x1ac], eax
movzx eax, word [esi + 0x150]
push eax
push 0x5e56
call fcn.004856b0
mov ecx, dword [ebp - 0x1ac]
add esp, 4
push eax
lea edx, [ebx + ecx]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
test edi, edi
je 0x41c665
lea edi, [ebx - 1]
jmp 0x41b6f0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b6f0
mov ax, word [0x59c7f8]
push 0x5e74
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b710
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b720
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 0x41b740
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b740
sub eax, edx
mov edx, dword [ebp - 0x198]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.00440ba0
jmp 0x41c662
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b768
sub eax, edx
mov dword [ebp - 0x1ac], eax
movzx eax, word [esi + 0x150]
push eax
push 0x5e57
call fcn.004856b0
mov ecx, dword [ebp - 0x1ac]
add esp, 4
push eax
lea edx, [ebx + ecx]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
test edi, edi
je 0x41c665
lea edi, [ebx - 1]
jmp 0x41b7b0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b7b0
mov ax, word [0x59c7f8]
push 0x5e74
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b7d0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b7e0
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 0x41b800
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b800
sub eax, edx
mov edx, dword [ebp - 0x198]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.00440ba0
jmp 0x41c662
push 0x5e53
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b832
sub eax, esi
lea edi, [ebx - 1]
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b840
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 0x41b860
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b860
sub eax, edx
mov esi, eax
mov eax, dword [ebp - 0x19c]
movzx ecx, word [eax + 0x150]
push ecx
push 0x5e55
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
cmp dword [ebp - 0x198], 0
je 0x41c665
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b8a4
mov ax, word [0x59c7f8]
push 0x5e74
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b8c4
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b8d0
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 0x41b8f0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b8f0
sub eax, edx
mov edx, dword [ebp - 0x198]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.00440ba0
jmp 0x41c662
push 0x5f06
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b922
sub eax, esi
lea edi, [ebx - 1]
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b930
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
cmp dword [ebp - 0x198], 0
rep movsb byte es:[edi], byte [esi]
je 0x41c665
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41b956
mov ax, word [0x59c7f8]
push 0x5e74
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b976
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41b982
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 0x41b9a0
sub eax, edx
mov edx, dword [ebp - 0x198]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.00440ba0
jmp 0x41c662
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b9c8
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x150]
push eax
push 0x5f07
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41b9f7
sub eax, edx
movzx edx, word [esi + 0x150]
push edx
push 0x5f08
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
jmp 0x41c65b
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ba25
sub eax, edx
push 1
push 0x5f14
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ba50
sub eax, edx
movzx edx, word [esi + 0x150]
push edx
push 0x5f15
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
jmp 0x41c65b
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ba80
movzx ecx, word [esi + 0x150]
push ecx
sub eax, edx
push 0x5f16
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bab0
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x150]
push eax
push 0x5f1c
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bae0
sub eax, edx
movzx edx, word [esi + 0x150]
push edx
push 0x5f20
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
jmp 0x41c65b
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bb10
movzx ecx, word [esi + 0x150]
push ecx
sub eax, edx
push 0x5f21
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bb40
sub eax, edx
mov edi, eax
movzx eax, word [esi + 0x150]
push 4
push eax
push 0x52b3
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x41c665
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bb80
sub eax, edx
movzx edx, word [esi + 0x150]
push edx
push 0x5f2a
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
jmp 0x41c65b
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bbb0
movzx ecx, word [esi + 0x150]
push ecx
sub eax, edx
push 0x5f36
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bbe0
push 0x5f69
jmp 0x41c64e
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bbf6
sub eax, edx
push 0x5f7a
mov esi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bc20
sub eax, edx
push 0x525c
mov esi, eax
call fcn.004856b0
push eax
lea edx, [ebx + esi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
test edi, edi
je 0x41c665
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41bc50
mov ax, word [0x59c7f8]
push 0x5e74
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bc70
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41bc80
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 0x41bca0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bca0
sub eax, edx
mov edx, dword [ebp - 0x198]
lea ecx, [ebx + eax]
push ecx
push 0x5e75
push edx
call fcn.00440ba0
jmp 0x41c662
movzx edx, word [esi + 0x150]
mov esi, dword [esi + 0x156]
test edx, edx
jle 0x41bd22
mov eax, ebx
lea edi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bce0
push edx
sub eax, edi
push 0x52a0
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cd90
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41bd10
mov cx, word [0x59c7f8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bd27
sub eax, edx
push esi
push 0x529f
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x41c88b
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bd58
sub eax, edx
push 0x4c4c7b
mov esi, eax
call fcn.004856b0
push eax
lea eax, [ebx + esi]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x41c88b
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bd85
sub eax, edx
push 0x534e
mov esi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bdb0
sub eax, edx
push 0x534f
mov esi, eax
call fcn.004856b0
push eax
lea edx, [ebx + esi]
push edx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bdd4
push 0x5363
jmp 0x41c64e
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bdf0
sub eax, edx
push 0x53f2
mov esi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41be14
sub eax, edx
push 0x53f2
mov esi, eax
call fcn.004856b0
push eax
lea edx, [ebx + esi]
push edx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41be38
sub eax, edx
push 0x537f
mov edi, eax
call fcn.004856b0
push eax
lea eax, [ebx + edi]
push eax
jmp 0x41be7a
mov eax, ebx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41be60
sub eax, edx
push 0x5380
mov edi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + edi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
movzx eax, word [esi + 0x150]
add esp, 0xc
cmp eax, 2
jne 0x41be94
lea edi, [eax + 0x3a]
jmp 0x41bea0
cmp eax, 3
jne 0x41c665
lea edi, [eax + 0x43]
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bea5
sub eax, edx
push edi
push 0x5396
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
jmp 0x41c65c
movzx edx, word [esi + 0x150]
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bed4
push edx
sub eax, esi
push 0x4c4c39
mov esi, eax
call fcn.004856b0
add esp, 4
jmp 0x41c657
movzx edx, word [esi + 0x150]
mov eax, ebx
lea esi, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bf00
push edx
sub eax, esi
push 0x4c4c3a
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
jmp 0x41c65c
movzx edx, word [esi + 0x150]
mov eax, ebx
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bf30
push edx
sub eax, esi
push 0x5389
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
jmp 0x41c65c
movzx eax, word [esi + 0x150]
push eax
call fcn.00482c20
add esp, 4
xor edx, edx
test eax, eax
je 0x41bf6f
mov edx, dword [eax + 0x14df]
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bf74
sub eax, esi
push edx
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x53ca
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
test edi, edi
je 0x41c665
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41bfb0
mov dx, word [0x59c7f8]
push 0x5e74
mov word [edi], dx
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bfd1
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41bfe0
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 0x41c000
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c000
jmp 0x41b507
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c011
sub eax, edx
push 0x4c4bc7
mov esi, eax
call fcn.004856b0
push eax
lea edx, [ebx + esi]
push edx
jmp 0x41c65c
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c035
push 0x4c4bcf
jmp 0x41c64e
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c050
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
movzx eax, word [esi + 0x150]
push eax
call fcn.00480a00
add esp, 4
mov dword [ebp - 0x1a4], eax
test eax, eax
je 0x41c599
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c090
sub eax, edx
push 0x4c5eee
mov esi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + esi]
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
push 0x59cc2c
push ecx
call esi
add esp, 0x10
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c0c0
mov dx, word [0x59c7f8]
mov ecx, dword [ebp - 0x1a4]
mov word [edi], dx
mov ecx, dword [ecx + 4]
mov edx, ecx
and edx, 0x1b800fdf
xor eax, eax
mov dword [ebp - 0x198], ecx
cmp edx, 0x1b800fdf
jne 0x41c113
push ebx
push 0x5ea9
push eax
call fcn.0040f730
push ebx
push 0x5ec4
push eax
call fcn.0040f730
add esp, 0x18
jmp 0x41c2f7
test cl, 1
je 0x41c1a9
mov eax, ecx
and eax, 0x1b800001
cmp eax, 0x1b800001
je 0x41c18a
test ecx, 0x8000000
je 0x41c13a
push ebx
push 0x5dcf
jmp 0x41c190
test ecx, 0x1000000
je 0x41c14a
push ebx
push 0x5dd0
jmp 0x41c190
test ecx, 0x800000
je 0x41c15a
push ebx
push 0x5dd1
jmp 0x41c190
test ecx, 0x2000000
je 0x41c16a
push ebx
push 0x5dd2
jmp 0x41c190
test ecx, 0x4000000
je 0x41c17a
push ebx
push 0x5dd3
jmp 0x41c190
test ecx, 0x10400000
je 0x41c18a
push ebx
push 0x5dd4
jmp 0x41c190
push ebx
push 0x5ea9
push 0
call fcn.0040f730
add esp, 0xc
mov dword [ebp - 0x1a0], 0x4c5ef3
jmp 0x41c2f7
mov edx, ecx
and edx, 0xfde
cmp edx, 0xfde
jne 0x41c1c6
push ebx
push 0x5ec4
push 0
jmp 0x41c2e5
test ecx, 0x8000000
je 0x41c1e4
push ebx
push 0x5dcf
push 0
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test cl, 2
je 0x41c1fe
push ebx
push 0x5e48
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test cl, 4
je 0x41c218
push ebx
push 0x5e49
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test cl, 8
je 0x41c232
push ebx
push 0x5e4a
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test cl, 0x10
je 0x41c24c
push ebx
push 0x5e4b
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test cl, cl
jns 0x41c265
push ebx
push 0x5e44
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test cl, 0x40
je 0x41c27f
push ebx
push 0x5e45
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test ecx, 0x100
je 0x41c29c
push ebx
push 0x5e4c
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test ecx, 0x200
je 0x41c2b9
push ebx
push 0x5e4d
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test ecx, 0x400
je 0x41c2d6
push ebx
push 0x5e4e
push eax
call fcn.0040f730
mov ecx, dword [ebp - 0x198]
add esp, 0xc
test ecx, 0x800
je 0x41c2ed
push ebx
push 0x5e4f
push eax
call fcn.0040f730
add esp, 0xc
mov dword [ebp - 0x1a0], 0x4c5efc
test eax, eax
je 0x41c311
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c300
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c316
sub eax, edx
push 0x4c5eef
mov edi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + edi]
push 0x59cc2c
push ecx
call esi
add esp, 0x10
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c340
mov dx, word [0x59c7f8]
mov esi, dword [ebp - 0x1a4]
mov word [edi], dx
mov dword [ebp - 0x198], 0
add esi, 0xc
mov dword [ebp - 0x1ac], 0xa
mov eax, 1
cmp dword [esi - 4], 0
je 0x41c3fb
cmp dword [esi], 0
je 0x41c3fb
cmp dword [ebp - 0x198], 0
jne 0x41c394
mov dword [ebp - 0x198], eax
jmp 0x41c3a8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c397
mov ax, word [0x59cbe4]
mov word [edi], ax
mov ecx, dword [esi - 4]
push ecx
call fcn.00486c80
mov ecx, ebx
add esp, 4
mov dword [ebp - 0x19c], eax
lea edi, [ecx + 1]
nop
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x41c3c0
mov edx, dword [eax + 0x7c]
sub ecx, edi
push edx
mov edi, ecx
call fcn.004856b0
add esp, 4
push eax
mov eax, dword [esi]
push eax
push 0x4c5ef1
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov eax, 1
add esi, 8
sub dword [ebp - 0x1ac], eax
jne 0x41c374
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c410
mov dx, word [0x59c7f8]
mov eax, ebx
mov word [edi], dx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c427
sub eax, edx
push 0x4c5ef0
mov esi, eax
call fcn.004856b0
push eax
lea eax, [ebx + esi]
push 0x59cc2c
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c452
mov edx, dword [ebp - 0x1a4]
mov cx, word [0x59c7f8]
add edx, 0x5c
mov word [edi], cx
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x1a4], edx
mov dword [ebp - 0x1ac], 9
jmp 0x41c490
mov eax, dword [ebp - 0x1a4]
cmp dword [eax - 4], 0
je 0x41c586
cmp dword [ebp - 0x198], 0
jne 0x41c4b5
mov dword [ebp - 0x198], 1
jmp 0x41c4ca
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c4b8
mov cx, word [0x59cbe4]
mov word [edi], cx
mov eax, dword [ebp - 0x1a4]
mov esi, dword [eax - 4]
sub esi, 0x43
test dword [eax], 0xffff0000
mov eax, ebx
lea edx, [eax + 1]
je 0x41c540
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c4e3
sub eax, edx
mov edx, dword [ebp - 0x1a4]
mov edi, dword [edx]
push 0x4c5ef2
mov dword [ebp - 0x1c0], eax
call fcn.004856b0
mov ecx, dword [ebp - 0x1a0]
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.004856b0
mov edx, dword [ebp - 0x1c0]
add esp, 4
push eax
lea eax, [ebx + edx]
push str._s_d_d_s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x18
jmp 0x41c586
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c540
sub eax, edx
push 0x4c5ef2
mov edi, eax
call fcn.004856b0
mov ecx, dword [ebp - 0x1a4]
mov edx, dword [ecx]
add esp, 4
push eax
mov eax, dword [ebp - 0x1a0]
push edx
add eax, esi
push eax
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push str._s_d_s
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
add dword [ebp - 0x1a4], 8
dec dword [ebp - 0x1ac]
jne 0x41c490
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c5a0
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
jmp 0x41c665
cmp byte [ebx], 0
je 0x41c5da
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c5c8
mov dx, word [0x59c7f8]
mov word [edi], dx
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c5e0
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
movzx eax, word [esi + 0x156]
push 1
push eax
push ebx
push 0
push 0
call fcn.00418a90
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c615
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
jmp 0x41c88b
mov eax, ebx
test edx, 0x18000
lea edx, [eax + 1]
je 0x41c672
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c642
push 0x5ecc
sub eax, edx
mov esi, eax
call fcn.004856b0
push eax
lea eax, [ebx + esi]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c668
jmp 0x41c61d
mov dword [ebp - 0x1bc], ecx
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c678
sub eax, edx
mov edi, eax
mov eax, dword [ebp - 0x1a0]
push eax
call fcn.00488700
movzx ecx, word [esi + 0x150]
add esp, 4
push eax
push ecx
push 0x5e90
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c6c0
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c6e0
sub eax, edx
mov dword [ebp - 0x198], eax
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c6f2
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c708
movzx ecx, word [esi + 0x150]
mov esi, dword [ebp - 0x1a0]
push 1
sub eax, edx
lea edi, [ebx + eax]
push edi
push ecx
push esi
push 0
push 0
push 0
call fcn.00412520
add esp, 0x1c
cmp byte [edi], 0
je 0x41c75d
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c740
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
jmp 0x41c767
mov edx, dword [ebp - 0x198]
mov byte [ebx + edx], 0
cmp esi, 0x13
jne 0x41c88b
cmp byte [ebx], 0
je 0x41c789
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c778
mov ax, word [0x59c7f8]
mov word [edi], ax
cmp dword [ebp - 0x1a4], 0
lea eax, [ebx - 1]
je 0x41c7b0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c795
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
jmp 0x41c7c8
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c7b0
mov cx, word [0x59cc4c]
mov word [eax], cx
mov dl, byte [0x59cc4e]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x19c]
movzx eax, word [eax + 0x160]
test ax, ax
je 0x41c7e1
mov edx, eax
jmp 0x41c7ee
mov ecx, dword [ebp - 0x1b8]
movzx edx, word [ecx + 0xe18]
mov eax, ebx
test edx, edx
jne 0x41c81f
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c7f7
sub eax, edx
push 0x5ec1
lea esi, [ebx + eax]
call fcn.004856b0
push eax
push str._s:____
push esi
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x41c869
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c822
sub eax, esi
push edx
lea esi, [ebx + eax]
call fcn.0048a360
push eax
call fcn.004856b0
add esp, 8
push eax
push 0x5eb4
call fcn.004856b0
add esp, 4
push eax
push 0x4f1d
call fcn.004856b0
add esp, 4
push eax
push str._s_s:__s
push esi
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c870
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
mov esi, dword [ebp - 0x1b4]
test esi, 0xc0000000
jne 0x41c8a9
test dword [ebp - 0x1c8], 0x20000000
je 0x41c951
cmp byte [ebx], 0
je 0x41c8c3
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c8b1
mov dx, word [0x59c7f8]
mov word [edi], dx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c8c6
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
xor eax, eax
test esi, esi
jns 0x41c8ef
push ebx
push 0x5dd5
jmp 0x41c901
test dword [ebp - 0x1c8], 0x20000000
je 0x41c90b
push ebx
push 0x5f19
push 0
call fcn.0040f730
add esp, 0xc
test dword [ebp - 0x1b4], 0x40000000
je 0x41c926
push ebx
push 0x5dd6
push eax
call fcn.0040f730
add esp, 0xc
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c930
mov cx, word [0x59cc8c]
mov esi, dword [ebp - 0x1b4]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
test esi, 0x1fdf
je 0x41e872
cmp byte [ebx], 0
je 0x41c976
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41c965
mov ax, word [0x59c7f8]
mov word [edi], ax
mov esi, dword [ebp - 0x1b0]
mov ecx, 0x200
test word [esi + 2], cx
jne 0x41ca9f
movzx edx, word [esi]
push edx
call fcn.004874d0
add esp, 4
test eax, eax
jne 0x41ca9f
movzx ecx, byte [esi + 0x46]
mov eax, ecx
sar eax, 4
and eax, 0xf
cmp eax, 4
jle 0x41c9b3
sub eax, 0x10
mov edx, dword [ebp - 0x19c]
movzx edi, byte [edx + 0x140]
add edi, eax
test edi, edi
jle 0x41cc62
and ecx, 0xf
mov edx, edi
sub edx, ecx
jns 0x41c9d7
xor edx, edx
jmp 0x41c9db
test edx, edx
jne 0x41c9fb
lea esi, [ebx - 1]
mov edi, edi
mov cl, byte [esi + 1]
inc esi
test cl, cl
jne 0x41c9e0
mov cx, word [0x59cc90]
mov word [esi], cx
mov cl, byte [0x59cc92]
mov byte [esi + 2], cl
test eax, eax
mov eax, ebx
lea esi, [eax + 1]
jle 0x41ca2a
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ca04
push edi
push edx
sub eax, esi
push 0x5eb8
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push str._s:__d__3_d_1
lea edx, [ebx + esi]
push edx
jmp 0x41ca7a
jns 0x41ca56
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ca30
push edi
push edx
sub eax, esi
push 0x5eb8
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push str._s:__d__2_d_1
lea eax, [ebx + esi]
push eax
jmp 0x41ca7a
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ca56
push edi
push edx
sub eax, esi
push 0x5eb8
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
push str._s:__d__1_d
lea ecx, [ebx + esi]
push ecx
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
call esi
add esp, 0x14
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41ca88
mov dx, word [0x59c7f8]
mov word [edi], dx
jmp 0x41cc68
movzx esi, byte [esi + 0x46]
push 0x4c4b8f
call fcn.004856b0
push 0x4c4b90
mov dword [ebp - 0x1bc], eax
call fcn.004856b0
push 0x4c4b93
mov dword [ebp - 0x1ac], eax
call fcn.004856b0
mov dword [ebp - 0x1a4], eax
mov eax, esi
sar eax, 4
and eax, 0xf
add esp, 0xc
and esi, 0xf
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1a0], esi
je 0x41cb77
mov edx, esi
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41caf8
mov cx, word [0x59cc50]
mov word [eax], cx
mov cl, byte [0x59cc52]
mov byte [eax + 2], cl
mov ecx, dword [ebp - 0x1a4]
dec edx
mov esi, ecx
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41cb20
sub ecx, esi
mov eax, ecx
lea edi, [ebx - 1]
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41cb30
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 0x41cb13
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41cb50
mov dx, word [0x59cc8c]
mov esi, dword [ebp - 0x1a0]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
mov eax, dword [ebp - 0x198]
mov edx, eax
sub edx, esi
je 0x41cbe0
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41cb80
mov cx, word [0x59cc8c]
mov word [eax], cx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
jmp 0x41cba0
mov eax, dword [ebp - 0x1bc]
dec edx
mov esi, eax
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41cbb0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41cbc0
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 0x41cba0
mov eax, dword [ebp - 0x198]
mov edx, dword [ebp - 0x19c]
movzx edx, byte [edx + 0x316]
sub edx, eax
test edx, edx
jle 0x41cc4a
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41cbf6
mov cx, word [0x59cc8c]
mov word [eax], cx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
mov eax, dword [ebp - 0x1ac]
dec edx
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41cc20
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41cc30
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 0x41cc11
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41cc50
mov dx, word [0x59c7f8]
mov word [edi], dx
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
test dword [ebp - 0x1b4], 0x4001000
jne 0x41cf95
mov ecx, dword [ebp - 0x1b0]
lea eax, [ebp - 0x1a8]
push eax
push ecx
call fcn.00487080
mov edx, dword [ebp - 0x1b0]
push edx
mov edi, eax
call fcn.00487100
add esp, 0xc
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x198], 0
call fcn.0044e6b0
mov ecx, dword [ebp - 0x1b0]
cmp dword [ecx + 0x23], eax
jne 0x41ccc6
mov dword [ebp - 0x198], 1
cmp dword [ebp - 0x1a8], 0
mov eax, ebx
lea edx, [eax + 1]
jne 0x41cdd9
cmp dword [ebp - 0x1a0], 0
jne 0x41cd54
cmp dword [ebp - 0x198], 0
je 0x41cd20
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ccf0
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - 0x1c0], eax
call fcn.004856b0
mov edx, dword [ebp - 0x1c0]
add esp, 4
push eax
push str._3_s:_2__d_1__d
jmp 0x41cec2
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41cd20
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - 0x1c0], eax
call fcn.004856b0
mov ecx, dword [ebp - 0x1c0]
add esp, 4
push eax
push str._2_s:__d_1__d
lea edx, [ebx + ecx]
push edx
jmp 0x41cec6
cmp dword [ebp - 0x198], 0
je 0x41cda0
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41cd60
sub eax, edx
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x1a0]
push edi
push eax
push 0x5ec6
call fcn.004856b0
mov ecx, dword [ebp - 0x1c0]
add esp, 4
push eax
push str._3_s:_1__d__d
lea edx, [ebx + ecx]
push edx
jmp 0x41cec6
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41cda0
sub eax, edx
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x1a0]
push edi
push eax
push 0x5ec6
call fcn.004856b0
mov ecx, dword [ebp - 0x1c0]
add esp, 4
push eax
push str._s:__d__d
lea edx, [ebx + ecx]
push edx
jmp 0x41cec6
cmp dword [ebp - 0x1a0], 0
jne 0x41ce51
cmp dword [ebp - 0x198], 0
je 0x41ce24
jmp 0x41cdf0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41cdf0
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - 0x1c0], eax
call fcn.004856b0
add esp, 4
push eax
mov eax, dword [ebp - 0x1c0]
push str._3_s:_2__d_1__2_d_1
lea ecx, [ebx + eax]
push ecx
jmp 0x41cec6
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ce24
push edi
sub eax, edx
push 0
push 0x5ec6
mov dword [ebp - 0x1c0], eax
call fcn.004856b0
mov edx, dword [ebp - 0x1c0]
add esp, 4
push eax
push str._2_s:__d_1__2_d_1
jmp 0x41cec2
cmp dword [ebp - 0x198], 0
je 0x41ce92
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ce60
mov ecx, dword [ebp - 0x1a0]
push edi
push ecx
sub eax, edx
push 0x5ec6
mov dword [ebp - 0x1c0], eax
call fcn.004856b0
mov edx, dword [ebp - 0x1c0]
add esp, 4
push eax
push str._3_s:_1__d__2_d_1
jmp 0x41cec2
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ce92
mov ecx, dword [ebp - 0x1a0]
push edi
push ecx
sub eax, edx
push 0x5ec6
mov dword [ebp - 0x1c0], eax
call fcn.004856b0
mov edx, dword [ebp - 0x1c0]
add esp, 4
push eax
push str._s:__d__2_d_1
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 0x41ced0
mov cx, word [0x59c7f8]
mov edx, dword [ebp - 0x19c]
mov word [edi], cx
cmp word [edx + 0x2f1], 0
je 0x41cf95
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41cf00
mov cx, word [0x59cc50]
mov word [eax], cx
mov dl, byte [0x59cc52]
push 0x5f89
mov byte [eax + 2], dl
call fcn.004856b0
add esp, 4
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41cf30
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41cf40
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 0x41cf60
mov ax, word [0x59c7f8]
mov word [edi], ax
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41cf74
mov cx, word [0x59cc8c]
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
test dword [ebp - 0x1c8], 0x200000
je 0x41cff3
mov eax, dword [ebp - 0x1b0]
movzx edx, word [eax]
mov ecx, dword [eax + 0x4b]
push edx
mov dword [ebp - 0x1a0], ecx
call fcn.004855e0
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 0x41cfc4
sub eax, edi
mov edi, eax
mov eax, dword [ebp - 0x1a0]
push edx
push eax
push 0x4c5eed
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push str._s:__d__d
push ecx
call esi
add esp, 0x14
mov eax, dword [ebp - 0x1b4]
test eax, 0x1001
je 0x41d236
push 0x5ddb
mov dword [ebp - 0x1a8], 1
call fcn.004856b0
add esp, 4
mov esi, eax
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d020
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41d030
mov edx, dword [ebp - 0x19c]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - 0x1b0]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movsx esi, byte [eax + 0x44]
add esi, dword [ebp - 0x194]
mov edi, dword [edx + 0xf5]
test esi, esi
jle 0x41d08a
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d070
mov cx, word [0x59ce4c]
mov word [eax], cx
mov dl, byte [0x59ce4e]
jmp 0x41d0a8
jns 0x41d0ab
lea eax, [ebx - 1]
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d090
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d0b0
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 str.__d_d
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
test esi, esi
je 0x41d0fb
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d0e0
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
test dword [ebp - 0x1b4], 0x1000
jne 0x41d45b
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41d110
mov ax, word [0x59c7f8]
push 0x5dd8
mov word [edi], ax
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d130
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41d140
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 0x41d160
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d160
mov ecx, dword [ebp - 0x19c]
movzx edx, byte [ecx + 0x98]
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
push edx
sub eax, esi
add eax, ebx
push 0x59c660
push eax
call edi
mov eax, dword [ebp - 0x1b8]
movsx ecx, word [eax + 0x4a5]
movzx edx, word [eax + 0x499]
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 0x41d1bd
mov eax, 1
jmp 0x41d1c1
test eax, eax
jle 0x41d1de
mov esi, ebx
lea edx, [esi + 1]
mov cl, byte [esi]
inc esi
test cl, cl
jne 0x41d1c6
push eax
sub esi, edx
lea eax, [ebx + esi]
push 0x59ce94
push eax
call edi
add esp, 0xc
mov ecx, dword [ebp - 0x1b0]
push ecx
call fcn.00411700
mov ecx, eax
add esp, 4
test ecx, ecx
jle 0x41d45b
mov eax, 0x66666667
imul ecx
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
test esi, esi
jle 0x41d45b
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d215
sub eax, edx
push esi
lea edx, [ebx + eax]
push str._E__d__1
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x41d45b
test eax, 0x800
je 0x41d350
mov eax, dword [ebp - 0x1b0]
movsx ecx, byte [eax + 0x44]
mov edx, dword [ebp - 0x19c]
mov dword [ebp - 0x1a8], 2
movzx eax, word [edx + 0xfb]
add eax, ecx
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x1a0], eax
je 0x41d45b
push 0x5dde
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d285
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41d291
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - 0x198]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test eax, eax
jle 0x41d2ce
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d2b4
mov cx, word [0x59ce4c]
mov word [eax], cx
mov dl, byte [0x59ce4e]
jmp 0x41d2eb
jns 0x41d2ee
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d2d3
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1a0]
push 0
push 0
push ebx
push 0
push eax
call fcn.0040f8d0
add esp, 0x14
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41d307
cmp dword [ebp - 0x198], 0
mov cx, word [0x59cbe8]
mov word [edi], cx
je 0x41d45b
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d330
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
jmp 0x41d45b
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [edx + 0x44]
mov ecx, dword [ebp - 0x19c]
add eax, dword [ebp - 0x194]
mov dword [ebp - 0x1a8], 4
movzx ecx, word [ecx + 0xfd]
add ecx, eax
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1a0], ecx
je 0x41d45b
push 0x5ddd
call fcn.004856b0
add esp, 4
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d3a0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41d3b0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - 0x198]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test eax, eax
jle 0x41d3ed
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d3d3
mov dx, word [0x59ce4c]
mov word [eax], dx
mov cl, byte [0x59ce4e]
jmp 0x41d40a
jns 0x41d40d
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d3f2
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d412
sub eax, edx
mov edx, dword [ebp - 0x1a0]
push edx
add eax, ebx
push 0x59ce84
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
cmp dword [ebp - 0x198], 0
je 0x41d45b
lea eax, [ebx - 1]
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d440
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
lea eax, [ebx - 1]
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d460
test byte [ebp - 0x1a8], 1
mov cx, word [0x59cc5c]
mov esi, dword [ebp - 0x19c]
mov word [eax], cx
mov dl, byte [0x59cc5e]
mov byte [eax + 2], dl
jne 0x41d4b0
mov eax, dword [esi + 0xf5]
test eax, eax
je 0x41d4b0
push 0
push 1
push ebx
push 0x5ddb
push eax
call fcn.0040fbe0
add esp, 4
push eax
call fcn.0040f8d0
add esp, 0x14
test byte [ebp - 0x1a8], 4
jne 0x41d4d7
movzx eax, word [esi + 0xfd]
test eax, eax
je 0x41d4d7
push 0
push 1
push ebx
push 0x5ddd
push eax
call fcn.0040f8d0
add esp, 0x14
test byte [ebp - 0x1a8], 2
jne 0x41d4fe
movzx eax, word [esi + 0xfb]
test eax, eax
je 0x41d4fe
push 0
push 1
push ebx
push 0x5dde
push eax
call fcn.0040f8d0
add esp, 0x14
movsx eax, word [esi + 0x111]
test eax, eax
je 0x41d51a
imul eax, eax, 0x64
push 1
push ebx
push 0x3c
push eax
call fcn.0040f7a0
add esp, 0x10
movzx eax, word [esi + 0xf3]
test eax, eax
je 0x41d538
push 0
push 1
push ebx
push 0x5dd9
push eax
call fcn.0040f8d0
add esp, 0x14
mov eax, dword [esi + 0xeb]
test eax, eax
je 0x41d555
push 0
push 1
push ebx
push 0x5dda
push eax
call fcn.0040f8d0
add esp, 0x14
mov eax, dword [esi + 0xef]
test eax, eax
je 0x41d572
push 0
push 1
push ebx
push 0x5e07
push eax
call fcn.0040f8d0
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d575
mov cx, word [0x59cc5c]
mov word [eax], cx
mov dl, byte [0x59cc5e]
mov byte [eax + 2], dl
movzx eax, word [esi + 0x105]
add eax, dword [ebp - 0x190]
je 0x41d5b2
push 0
push 1
push ebx
push 0x5dc6
push eax
call fcn.0040f8d0
add esp, 0x14
movzx eax, word [esi + 0x107]
add eax, dword [ebp - 0x18c]
je 0x41d5d4
push 0
push 1
push ebx
push 0x5dc7
push eax
call fcn.0040f8d0
add esp, 0x14
movzx eax, word [esi + 0x109]
add eax, dword [ebp - 0x188]
je 0x41d5f6
push 0
push 1
push ebx
push 0x5dc8
push eax
call fcn.0040f8d0
add esp, 0x14
movzx eax, word [esi + 0x10b]
add eax, dword [ebp - 0x184]
je 0x41d618
push 0
push 1
push ebx
push 0x5dc9
push eax
call fcn.0040f8d0
add esp, 0x14
movzx eax, word [esi + 0x10d]
add eax, dword [ebp - 0x180]
je 0x41d63a
push 0
push 1
push ebx
push 0x5dca
push eax
call fcn.0040f8d0
add esp, 0x14
movzx eax, word [esi + 0x10f]
add eax, dword [ebp - 0x17c]
je 0x41d65c
push 0
push 1
push ebx
push 0x5dcb
push eax
call fcn.0040f8d0
add esp, 0x14
test dword [ebp - 0x1b4], 0x1101
je 0x41d747
mov eax, dword [ebp - 0x1b0]
mov al, byte [eax + 0x45]
test al, al
je 0x41d747
movzx ecx, word [esi + 0xff]
add ecx, dword [ebp - 0xfc]
movzx eax, al
add eax, ecx
mov dword [ebp - 0x1a0], eax
je 0x41d769
cmp byte [ebx], 0
je 0x41d6b5
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41d6a3
mov dx, word [0x59c7f8]
mov word [edi], dx
push 0x5de1
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d6c4
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41d6d0
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 0x41d6f0
mov cx, word [0x59ce4c]
push 0
mov word [eax], cx
mov dl, byte [0x59ce4e]
push 0
push ebx
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1a0]
push 0
push eax
call fcn.0040f8d0
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d724
mov cx, word [0x59cc5c]
mov esi, dword [ebp - 0x19c]
mov word [eax], cx
mov dl, byte [0x59cc5e]
mov byte [eax + 2], dl
jmp 0x41d769
movzx eax, word [esi + 0xff]
add eax, dword [ebp - 0xfc]
je 0x41d769
push 0
push 1
push ebx
push 0x5de1
push eax
call fcn.0040f8d0
add esp, 0x14
mov eax, dword [ebp - 0x1b0]
mov al, byte [eax + 0x48]
test al, al
jne 0x41d7a0
movzx eax, word [esi + 0xf9]
test eax, eax
je 0x41d891
push 0
push reloc.DSOUND.dll_DirectSoundCreate
push ebx
push 0x5ddc
push eax
call fcn.0040f8d0
add esp, 0x14
jmp 0x41d891
movsx ecx, al
movzx eax, word [esi + 0xf9]
add eax, ecx
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x1a0], eax
je 0x41d891
cmp byte [ebx], 0
je 0x41d7d8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41d7c6
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0x5ddc
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d7e7
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41d7f3
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [ebp - 0x198]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test eax, eax
jle 0x41d830
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d816
mov dx, word [0x59ce4c]
mov word [eax], dx
mov cl, byte [0x59ce4e]
jmp 0x41d84d
jns 0x41d850
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d835
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
mov edx, dword [ebp - 0x1a0]
push 0
push closesocket
push ebx
push 0
push edx
call fcn.0040f8d0
add esp, 0x14
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d870
mov cx, word [0x59cc5c]
mov esi, dword [ebp - 0x19c]
mov word [eax], cx
mov dl, byte [0x59cc5e]
mov byte [eax + 2], dl
movzx eax, word [esi + 0x101]
add eax, dword [ebp - 0x130]
je 0x41d8b3
push 0
push 1
push ebx
push 0x5ddf
push eax
call fcn.0040f8d0
add esp, 0x14
test byte [ebp - 0x1b4], 6
je 0x41d991
mov eax, dword [ebp - 0x1b0]
mov al, byte [eax + 0x45]
test al, al
je 0x41d991
movzx ecx, word [esi + 0x103]
add ecx, dword [ebp - 0x12c]
movzx eax, al
add eax, ecx
mov dword [ebp - 0x1a0], eax
je 0x41d9b3
cmp byte [ebx], 0
je 0x41d909
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41d8f7
mov dx, word [0x59c7f8]
mov word [edi], dx
push 0x5de0
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41d918
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41d924
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 0x41d940
mov cx, word [0x59ce4c]
push 0
mov word [eax], cx
mov dl, byte [0x59ce4e]
push 0
push ebx
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1a0]
push 0
push eax
call fcn.0040f8d0
add esp, 0x14
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41d974
mov cx, word [0x59cc5c]
mov word [eax], cx
mov dl, byte [0x59cc5e]
mov byte [eax + 2], dl
jmp 0x41d9b3
movzx eax, word [esi + 0x103]
add eax, dword [ebp - 0x12c]
je 0x41d9b3
push 0
push 1
push ebx
push 0x5de0
push eax
call fcn.0040f8d0
add esp, 0x14
lea eax, [ebp - 0x174]
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x1a4], 0x5de2
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x1ac], 8
mov ecx, 1
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x1a4]
movzx esi, byte [edx + eax - 0x5cc5]
mov edx, dword [ebp - 0x1a0]
add esi, dword [edx]
je 0x41daa9
cmp dword [ebp - 0x198], 0
lea edi, [ebx - 1]
jne 0x41da30
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41da10
mov ax, word [0x59c7f8]
mov word [edi], ax
mov dword [ebp - 0x198], ecx
jmp 0x41da42
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41da30
mov cx, word [0x59cbe4]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41da47
sub eax, edx
push 0x5dea
mov edi, eax
call fcn.004856b0
mov edx, dword [ebp - 0x1a4]
add esp, 4
push eax
push edx
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cc54
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
push 0
push 0
push ebx
push 0
push esi
call fcn.0040f8d0
add esp, 0x24
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41da92
mov cx, word [0x59cbe8]
mov word [edi], cx
mov ecx, 1
add dword [ebp - 0x1a0], 4
add dword [ebp - 0x1a4], ecx
sub dword [ebp - 0x1ac], ecx
jne 0x41d9e2
lea edx, [ebp - 0x150]
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x1a4], 0x5de2
mov dword [ebp - 0x1a0], edx
mov dword [ebp - 0x1ac], 8
mov ecx, 1
mov eax, dword [ebp - 0x19c]
mov edx, dword [ebp - 0x1a4]
movsx esi, byte [eax + edx - 0x5cce]
mov eax, dword [ebp - 0x1a0]
add esi, dword [eax]
je 0x41dbb7
cmp dword [ebp - 0x198], 0
lea edi, [ebx - 1]
jne 0x41db40
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41db20
mov dx, word [0x59c7f8]
mov word [edi], dx
mov dword [ebp - 0x198], ecx
jmp 0x41db51
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41db40
mov ax, word [0x59cbe4]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41db56
sub eax, edx
push 0x5deb
mov edi, eax
call fcn.004856b0
mov ecx, dword [ebp - 0x1a4]
add esp, 4
push eax
push ecx
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x59cc54
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
push 0
push 0
push ebx
push 0
push esi
call fcn.0040f8d0
add esp, 0x24
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dba1
mov ax, word [0x59cbe8]
mov word [edi], ax
mov ecx, 1
add dword [ebp - 0x1a0], 4
add dword [ebp - 0x1a4], ecx
sub dword [ebp - 0x1ac], ecx
jne 0x41daf1
mov ecx, dword [ebp - 0x19c]
mov esi, 0x5de2
mov dword [ebp - 0x1ac], 8
jmp 0x41dbf0
movsx eax, byte [ecx + esi - 0x5cbc]
mov dword [ebp - 0x198], eax
test eax, eax
je 0x41dc6c
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dc05
mov cx, word [0x59c7f8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41dc20
sub eax, edx
push esi
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
push 0x5f2c
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
mov eax, dword [ebp - 0x198]
push 0
push closesocket
push ebx
push 0
push eax
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x20
inc esi
dec dword [ebp - 0x1ac]
jne 0x41dbf0
mov edx, dword [ecx + 0x130]
test edx, edx
je 0x41dcbb
cmp byte [ebx], 0
je 0x41dca2
lea edi, [ebx - 1]
jmp 0x41dc90
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dc90
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0
push 0
push ebx
push 0x4c4b46
push edx
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
mov edx, dword [ecx + 0x134]
test edx, edx
je 0x41dcfa
cmp byte [ebx], 0
je 0x41dce1
lea edi, [ebx - 1]
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dcd0
mov ax, word [0x59c7f8]
mov word [edi], ax
push 0
push 0
push ebx
push 0x4c4b47
push edx
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
movzx eax, byte [ecx + 0x13e]
add eax, dword [ebp - 0x114]
mov dword [ebp - 0x1a0], eax
je 0x41dd7c
cmp byte [ebx], 0
je 0x41dd29
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dd17
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0x5deb
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41dd38
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41dd44
mov edx, dword [ebp - 0x1a0]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push closesocket
push ebx
mov ecx, eax
and ecx, 3
push 0x5df1
push edx
rep movsb byte es:[edi], byte [esi]
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
movzx eax, byte [ecx + 0x13a]
add eax, dword [ebp - 0x110]
mov dword [ebp - 0x1a0], eax
je 0x41de08
cmp byte [ebx], 0
je 0x41ddb1
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dda0
mov ax, word [0x59c7f8]
mov word [edi], ax
push 0x5deb
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ddc0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41ddd0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
mov ecx, eax
push closesocket
and ecx, 3
push ebx
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x1a0]
push 0x5df2
push ecx
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
movzx eax, byte [ecx + 0x13d]
add eax, dword [ebp - 0x10c]
mov dword [ebp - 0x1a0], eax
je 0x41de8a
cmp byte [ebx], 0
je 0x41de37
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41de25
mov dx, word [0x59c7f8]
mov word [edi], dx
push 0x5deb
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41de46
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41de52
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push closesocket
mov ecx, eax
mov eax, dword [ebp - 0x1a0]
push ebx
and ecx, 3
push 0x5df3
push eax
rep movsb byte es:[edi], byte [esi]
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
movzx eax, byte [ecx + 0x13f]
add eax, dword [ebp - 0x108]
mov dword [ebp - 0x1a0], eax
je 0x41df0c
cmp byte [ebx], 0
je 0x41deb9
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dea7
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0x5deb
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41dec8
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41ded4
mov edx, dword [ebp - 0x1a0]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push closesocket
push ebx
mov ecx, eax
and ecx, 3
push 0x5df4
push edx
rep movsb byte es:[edi], byte [esi]
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
movzx eax, byte [ecx + 0x13b]
add eax, dword [ebp - 0x104]
mov dword [ebp - 0x1a0], eax
je 0x41df98
cmp byte [ebx], 0
je 0x41df41
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41df30
mov ax, word [0x59c7f8]
mov word [edi], ax
push 0x5deb
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41df50
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41df60
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
mov ecx, eax
push closesocket
and ecx, 3
push ebx
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x1a0]
push 0x5df5
push ecx
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
movzx eax, byte [ecx + 0x13c]
add eax, dword [ebp - 0x100]
mov dword [ebp - 0x1a0], eax
je 0x41e01a
cmp byte [ebx], 0
je 0x41dfc7
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41dfb5
mov dx, word [0x59c7f8]
mov word [edi], dx
push 0x5deb
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41dfd6
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41dfe2
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0
push closesocket
mov ecx, eax
mov eax, dword [ebp - 0x1a0]
push ebx
and ecx, 3
push 0x5df6
push eax
rep movsb byte es:[edi], byte [esi]
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
movzx eax, byte [ecx + 0x2ec]
mov dword [ebp - 0x198], eax
test eax, eax
je 0x41e08b
cmp byte [ebx], 0
movzx edx, byte [ecx + 0x2eb]
je 0x41e052
lea edi, [ebx - 1]
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e040
mov cx, word [0x59c7f8]
mov word [edi], cx
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e057
sub eax, esi
mov esi, eax
mov eax, dword [ebp - 0x198]
push eax
push edx
push 0x5f57
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebp - 0x19c]
add esp, 0x10
movzx eax, byte [ecx + 0x2ee]
mov dword [ebp - 0x198], eax
test eax, eax
je 0x41e0fa
cmp byte [ebx], 0
movzx edx, byte [ecx + 0x2ed]
je 0x41e0c1
lea edi, [ebx - 1]
jmp 0x41e0b0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e0b0
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e0c6
mov ecx, dword [ebp - 0x198]
push ecx
push edx
sub eax, esi
push 0x5f58
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebp - 0x19c]
add esp, 0x10
movzx eax, byte [ecx + 0x2f0]
mov dword [ebp - 0x198], eax
test eax, eax
je 0x41e16a
cmp byte [ebx], 0
movzx edx, byte [ecx + 0x2ef]
je 0x41e131
lea edi, [ebx - 1]
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e120
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e136
mov ecx, dword [ebp - 0x198]
push ecx
push edx
sub eax, esi
push 0x5f59
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebp - 0x19c]
add esp, 0x10
cmp byte [ecx + 0x2ea], 0
je 0x41e1c4
cmp byte [ebx], 0
je 0x41e191
lea edi, [ebx - 1]
jmp 0x41e180
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e180
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e196
sub eax, edx
push 0x533d
mov esi, eax
call fcn.004856b0
push eax
lea ecx, [ebx + esi]
push str._8_s
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebp - 0x19c]
add esp, 0x10
cmp word [ecx + 0x138], 0
je 0x41e1ec
lea eax, [ebx - 1]
mov dl, byte [eax + 1]
inc eax
test dl, dl
jne 0x41e1d1
mov dx, word [0x59cc50]
mov word [eax], dx
mov dl, byte [0x59cc52]
mov byte [eax + 2], dl
cmp byte [ecx + 0x317], 0
je 0x41e2a5
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e200
mov ax, word [0x59c7f8]
mov word [edi], ax
movzx edi, byte [ecx + 0x318]
mov ecx, dword [ebp - 0x1b8]
movzx edx, word [ecx + 0x3cb]
lea eax, [ebx - 1]
cmp edi, edx
jl 0x41e250
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e230
mov cx, word [0x59cc50]
mov word [eax], cx
mov dl, byte [0x59cc52]
jmp 0x41e268
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e250
mov cx, word [0x59cc90]
mov word [eax], cx
mov dl, byte [0x59cc92]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e270
sub eax, edx
mov esi, eax
mov eax, dword [ebp - 0x19c]
movzx ecx, byte [eax + 0x317]
push ecx
push edi
push 0x5fbd
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov esi, dword [ebp - 0x1cc]
test esi, esi
jne 0x41e2bb
test dword [ebp - 0x1c8], 0x5000000
je 0x41e2d8
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x1b0]
push eax
push ebx
push edi
push ecx
call fcn.00412250
add esp, 0x10
jmp 0x41e2de
mov edi, dword [ebp - 0x19c]
push 0
push 0
push 0
push 0
lea edx, [edi + 0x16a]
push edx
push ebx
call fcn.0040fc00
add esp, 0x18
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e300
mov cx, word [0x59ce78]
mov word [eax], cx
mov dl, byte [0x59ce7a]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1a8]
movzx ecx, word [edi + 0xd8]
mov edx, dword [ebp - 0x1b0]
push 0
push eax
push ecx
push 6
add edx, 0x28
push edx
lea eax, [ebp - 0x194]
push eax
push ebx
call fcn.00417730
add esp, 0x1c
test eax, eax
je 0x41e356
or dword [ebp - 0x1a8], 0x80000000
cmp byte [ebx], 0
je 0x41e372
lea edi, [ebx - 1]
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e360
mov cx, word [0x59c7f8]
mov word [edi], cx
test esi, esi
jne 0x41e4b9
test byte [ebp - 0x1a8], 6
mov esi, dword [ebp - 0x194]
je 0x41e470
test esi, esi
je 0x41e470
cmp esi, 0xf
jg 0x41e3c0
mov edx, dword [ebp - 0x19c]
movzx ecx, word [edx + 0xd8]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
imul ecx, esi
jmp 0x41e443
cmp esi, 0x14
jg 0x41e3f4
mov ecx, dword [ebp - 0x19c]
movzx edx, word [ecx + 0xd8]
lea ecx, [esi - 0xf]
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
jmp 0x41e443
mov eax, dword [ebp - 0x19c]
movzx edi, word [eax + 0xd8]
lea ecx, [esi - 0x14]
imul ecx, edi
mov dword [ebp - 0x1c0], ecx
fild dword [ebp - 0x1c0]
fmul qword [0x59ce70]
call fcn.005496d0
mov dword [ebp - 0x1c0], eax
mov eax, 0x66666667
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [edi + eax*2]
add ecx, eax
lea ecx, [ecx + ecx*4]
sub ecx, dword [ebp - 0x1c0]
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e446
mov dx, word [0x59cc50]
push 0
push 1
push ebx
mov word [edi], dx
mov al, byte [0x59cc52]
push 0x1e
push ecx
mov byte [edi + 2], al
call fcn.0040f8d0
add esp, 0x14
test byte [ebp - 0x1a8], 2
je 0x41e4b9
test esi, esi
je 0x41e4b9
lea ecx, [esi - 0x10]
cmp ecx, 4
ja 0x41e4b9
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e488
mov dx, word [0x59cc50]
push 0
push 1
push ebx
mov word [eax], dx
mov cl, byte [0x59cc52]
push 0x5dde
add esi, 0xfffffff1
push esi
mov byte [eax + 2], cl
call fcn.0040f8d0
add esp, 0x14
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e4c0
test byte [ebp + 0x10], 1
mov dx, word [0x59cc4c]
mov word [eax], dx
mov cl, byte [0x59cc4e]
mov byte [eax + 2], cl
je 0x41e517
cmp dword [ebp - 0x1cc], 0
jne 0x41e517
test byte [ebp - 0x1a8], 6
je 0x41e517
mov edx, dword [ebp - 0x1b8]
movzx eax, byte [edx + 0xe27]
test eax, eax
je 0x41e517
push 0
push 1
push ebx
push 0x5f2b
push eax
call fcn.0040f8d0
add esp, 0x14
mov eax, dword [ebp - 0x1b0]
test byte [eax + 2], 0x80
je 0x41e576
cmp byte [ebx], 0
je 0x41e542
lea edi, [ebx - 1]
jmp 0x41e530
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e530
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0x5359
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e551
sub eax, esi
lea edi, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41e560
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 edx, dword [ebp - 0x1b0]
mov eax, dword [edx + 0x40]
test eax, eax
je 0x41e6a5
cmp eax, 0xffffffff
jne 0x41e5db
cmp byte [ebx], 0
je 0x41e5a5
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e594
mov ax, word [0x59c7f8]
mov word [edi], ax
push 0x534c
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e5b4
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41e5c0
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 0x41e6a5
push 0
call fcn.0054a62b
mov edx, dword [ebp - 0x1b0]
mov ecx, dword [edx + 0x40]
add esp, 4
cmp ecx, eax
jle 0x41e69e
push ecx
call fcn.00440ce0
add esp, 4
mov dword [ebp - 0x1a4], eax
test eax, eax
je 0x41e6a5
cmp byte [ebx], 0
je 0x41e627
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e615
mov cx, word [0x59c7f8]
mov word [edi], cx
push 0x534d
call fcn.004856b0
add esp, 4
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e636
sub eax, esi
lea edi, [ebx - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41e642
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 0x41e660
mov ecx, dword [ebp - 0x1a4]
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 str.:_04d__02d__02d__02d:_02d
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x1c
jmp 0x41e6a5
mov dword [edx + 0x40], 0
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e6a8
mov cx, word [0x59cc8c]
mov esi, dword [ebp - 0x19c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov ecx, dword [ebp + 0x10]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x1b8]
push eax
push ebx
push esi
push ecx
call fcn.004185f0
mov eax, dword [ebp - 0x1b0]
add esp, 0x10
xor edx, edx
add eax, 0x4f
mov dword [ebp - 0x1c0], eax
mov ecx, 9
movzx edi, word [eax]
add edx, edi
add eax, 2
dec ecx
jne 0x41e6f4
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e702
mov ax, word [0x59c7f8]
mov word [edi], ax
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e716
mov cx, word [0x59cc5c]
mov word [eax], cx
mov cl, byte [0x59cc5e]
mov byte [eax + 2], cl
movzx edi, word [esi + 0x31b]
test di, di
je 0x41e76a
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e742
push edi
push edx
sub eax, esi
push 0x4c5f05
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + esi]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e770
mov dx, word [0x59cc50]
mov word [eax], dx
mov cl, byte [0x59cc52]
mov byte [eax + 2], cl
xor eax, eax
mov dword [ebp - 0x1a0], eax
cmp dword [ebp - 0x1d0], eax
je 0x41e7a6
mov eax, 0x4c5ef3
mov dword [ebp - 0x1a0], eax
test dword [ebp - 0x1b4], 0xfde
je 0x41e7be
mov dword [ebp - 0x1a0], 0x4c5efc
jmp 0x41e7c6
test eax, eax
je 0x41e846
mov edx, dword [ebp - 0x1c0]
xor esi, esi
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x1a4]
cmp word [eax], 0
je 0x41e839
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e7e3
mov cx, word [0x59c7f8]
mov eax, ebx
mov word [edi], cx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e800
mov ecx, dword [ebp - 0x1a0]
sub eax, edx
mov edx, dword [ebp - 0x1a4]
mov edi, eax
movzx eax, word [edx]
push eax
add ecx, esi
push ecx
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push str._s_d
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
add dword [ebp - 0x1a4], 2
inc esi
cmp esi, 8
jle 0x41e7d4
dec ebx
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x41e847
mov ax, word [0x59cc8c]
mov word [ebx], ax
mov cl, byte [0x59cc8e]
pop esi
pop edi
mov byte [ebx + 2], cl
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00549540
mov esp, ebp
pop ebp
ret
test dword [ebp - 0x1c8], 0x100000
je 0x41ee63
cmp byte [ebx], 0
je 0x41e8a2
lea edi, [ebx - 1]
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41e890
mov dx, word [0x59c7f8]
mov word [edi], dx
mov eax, dword [ebp - 0x1b0]
movzx ecx, byte [eax + 0x46]
mov edx, 0x200
mov dword [ebp - 0x1a0], ecx
test word [eax + 2], dx
je 0x41ea7a
push 0x4c4b8f
call fcn.004856b0
push 0x4c4b90
mov dword [ebp - 0x1bc], eax
call fcn.004856b0
push 0x4c4b93
mov dword [ebp - 0x1ac], eax
call fcn.004856b0
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x1a0]
mov ecx, eax
sar ecx, 4
and ecx, 0xf
add esp, 0xc
and eax, 0xf
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x1a0], eax
je 0x41e9a7
mov edx, eax
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e920
mov cx, word [0x59cc50]
mov word [eax], cx
mov cl, byte [0x59cc52]
mov byte [eax + 2], cl
jmp 0x41e940
mov ecx, dword [ebp - 0x1a4]
dec edx
mov esi, ecx
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41e950
sub ecx, esi
mov eax, ecx
lea edi, [ebx - 1]
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41e960
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 0x41e940
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e980
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [ebp - 0x198]
mov edx, ecx
sub edx, eax
je 0x41ea10
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41e9b0
mov cx, word [0x59cc8c]
mov word [eax], cx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
jmp 0x41e9d0
mov eax, dword [ebp - 0x1bc]
dec edx
mov esi, eax
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e9e0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41e9f0
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 0x41e9d0
mov ecx, dword [ebp - 0x198]
mov edx, dword [ebp - 0x19c]
movzx edx, byte [edx + 0x316]
sub edx, ecx
test edx, edx
jle 0x41ea7a
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ea26
mov cx, word [0x59cc8c]
mov word [eax], cx
mov cl, byte [0x59cc8e]
mov byte [eax + 2], cl
mov eax, dword [ebp - 0x1ac]
dec edx
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ea50
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41ea60
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 0x41ea41
lea eax, [ebx - 1]
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ea80
mov dx, word [0x59cc5c]
mov word [eax], dx
mov cl, byte [0x59cc5e]
mov edx, dword [ebp - 0x19c]
mov byte [eax + 2], cl
mov eax, dword [edx + 0xf5]
test eax, eax
je 0x41eac2
push 0
push 1
sar eax, 0x10
push ebx
cwde
push 0x5ddb
push eax
call fcn.0040f8d0
add esp, 0x14
mov ecx, dword [ebp - 0x19c]
movzx eax, word [ecx + 0xfd]
test eax, eax
je 0x41eae6
push 0
push 1
push ebx
push 0x5ddd
push eax
call fcn.0040f8d0
add esp, 0x14
mov edx, dword [ebp - 0x19c]
movzx eax, word [edx + 0xf3]
test eax, eax
je 0x41eb0a
push 0
push 1
push ebx
push 0x5dd9
push eax
call fcn.0040f8d0
add esp, 0x14
mov eax, dword [ebp - 0x19c]
movzx eax, word [eax + 0x105]
add eax, dword [ebp - 0x190]
je 0x41eb32
push 0
push 1
push ebx
push 0x5dc6
push eax
call fcn.0040f8d0
add esp, 0x14
mov ecx, dword [ebp - 0x19c]
movzx eax, word [ecx + 0x107]
add eax, dword [ebp - 0x18c]
je 0x41eb5a
push 0
push 1
push ebx
push 0x5dc7
push eax
call fcn.0040f8d0
add esp, 0x14
mov edx, dword [ebp - 0x19c]
movzx eax, word [edx + 0x10b]
add eax, dword [ebp - 0x184]
je 0x41eb82
push 0
push 1
push ebx
push 0x5dc9
push eax
call fcn.0040f8d0
add esp, 0x14
mov eax, dword [ebp - 0x19c]
movzx eax, word [eax + 0x10d]
add eax, dword [ebp - 0x180]
je 0x41ebaa
push 0
push 1
push ebx
push 0x5dca
push eax
call fcn.0040f8d0
add esp, 0x14
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x1a4], 0x5de2
mov dword [ebp - 0x1bc], 8
mov ecx, 1
lea esp, [esp]
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x1a4]
movzx esi, byte [eax + edx - 0x5cc5]
mov edx, dword [ebp - 0x1ac]
add esi, dword [edx]
je 0x41eca9
cmp dword [ebp - 0x198], 0
lea edi, [ebx - 1]
jne 0x41ec30
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41ec10
mov ax, word [0x59c7f8]
mov word [edi], ax
mov dword [ebp - 0x198], ecx
jmp 0x41ec42
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41ec30
mov cx, word [0x59cbe4]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ec47
sub eax, edx
push 0x5dea
mov edi, eax
call fcn.004856b0
mov edx, dword [ebp - 0x1a4]
add esp, 4
push eax
push edx
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push 0x59cc54
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
push 0
push 0
push ebx
push 0
push esi
call fcn.0040f8d0
add esp, 0x24
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41ec92
mov cx, word [0x59cbe8]
mov word [edi], cx
mov ecx, 1
add dword [ebp - 0x1ac], 4
add dword [ebp - 0x1a4], ecx
sub dword [ebp - 0x1bc], ecx
jne 0x41ebe0
lea edx, [ebp - 0x150]
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x1a4], 0x5de2
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1bc], 8
lea esp, [esp]
mov eax, dword [ebp - 0x19c]
mov edx, dword [ebp - 0x1a4]
movsx esi, byte [edx + eax - 0x5cce]
mov eax, dword [ebp - 0x1ac]
add esi, dword [eax]
je 0x41edb7
cmp dword [ebp - 0x198], 0
lea edi, [ebx - 1]
jne 0x41ed40
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41ed20
mov dx, word [0x59c7f8]
mov word [edi], dx
mov dword [ebp - 0x198], ecx
jmp 0x41ed51
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41ed40
mov ax, word [0x59cbe4]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ed56
sub eax, edx
push 0x5deb
mov edi, eax
call fcn.004856b0
mov ecx, dword [ebp - 0x1a4]
add esp, 4
push eax
push ecx
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + edi]
push 0x59cc54
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
push 0
push 0
push ebx
push 0
push esi
call fcn.0040f8d0
add esp, 0x24
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41eda1
mov ax, word [0x59cbe8]
mov word [edi], ax
mov ecx, 1
add dword [ebp - 0x1ac], 4
add dword [ebp - 0x1a4], ecx
sub dword [ebp - 0x1bc], ecx
jne 0x41ecf0
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41edd3
mov cx, word [0x59c7f8]
mov word [edi], cx
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ede8
mov dx, word [0x59ce78]
mov word [eax], dx
mov cl, byte [0x59ce7a]
mov edx, dword [ebp - 0x1a8]
mov byte [eax + 2], cl
mov eax, dword [ebp - 0x19c]
movzx ecx, word [eax + 0xd8]
push 0
push edx
mov edx, dword [ebp - 0x1b0]
push ecx
push 6
add edx, 0x28
push edx
lea eax, [ebp - 0x194]
push eax
push ebx
call fcn.00417730
add esp, 0x1c
dec ebx
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x41ee37
mov cx, word [0x59cc8c]
mov word [ebx], cx
mov dl, byte [0x59cc8e]
pop esi
pop edi
mov byte [ebx + 2], dl
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00549540
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x1b0]
movzx eax, word [eax]
cmp eax, 0x1da0
jg 0x41ee86
je 0x41ee8d
sub eax, 0x1cf5
je 0x41ee8d
sub eax, 0x61
je 0x41ee8d
jmp 0x41ef06
cmp eax, 0xbbae
jne 0x41ef06
cmp byte [ebx], 0
je 0x41eea7
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41ee95
mov cx, word [0x59c7f8]
mov word [edi], cx
lea eax, [ebx - 1]
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41eeb0
mov dx, word [0x59cc4c]
mov word [eax], dx
mov cl, byte [0x59cc4e]
push 0x5ecc
mov byte [eax + 2], cl
call fcn.004856b0
add esp, 4
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41eee0
sub eax, esi
lea edi, [ebx - 1]
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41eef0
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 - 0x1b4]
and eax, 0x200000
mov dword [ebp - 0x1a4], eax
lea eax, [ebx - 1]
je 0x41ef40
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ef20
mov dx, word [0x59cc8c]
mov word [eax], dx
mov cl, byte [0x59cc8e]
jmp 0x41ef58
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41ef40
mov dx, word [0x59cc4c]
mov word [eax], dx
mov cl, byte [0x59cc4e]
mov esi, dword [ebp - 0x19c]
mov byte [eax + 2], cl
test dword [esi + 0x16a], 0x20000000
lea eax, [esi + 0x16a]
mov dword [ebp - 0x1ac], eax
jne 0x41f309
movzx eax, word [esi + 0xf3]
test ax, ax
je 0x41efc0
movzx ecx, word [esi + 0x12e]
push 0
push 1
test cx, cx
je 0x41efae
lea edx, [ebx + 2]
push edx
push 0x5dd9
push ecx
push eax
call fcn.0040f9a0
add esp, 0x18
jmp 0x41efc0
lea ecx, [ebx + 2]
push ecx
push 0x5dd9
push eax
call fcn.0040f8d0
add esp, 0x14
mov eax, dword [esi + 0xeb]
test eax, eax
je 0x41f08b
xor edi, edi
test eax, eax
jns 0x41f00b
mov ecx, dword [ebp - 0x1b8]
neg eax
cmp dword [ecx + 0x3a5], eax
jae 0x41f00b
mov edi, 1
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41eff0
mov dx, word [0x59cc90]
mov word [eax], dx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
movzx eax, word [esi + 0x12e]
push 0
push 1
lea edx, [ebx + 2]
push edx
push 0x5dda
test ax, ax
je 0x41f036
mov ecx, dword [esi + 0xeb]
push eax
push ecx
call fcn.0040f9a0
add esp, 0x18
jmp 0x41f045
mov eax, dword [esi + 0xeb]
push eax
call fcn.0040f8d0
add esp, 0x14
test edi, edi
je 0x41f08b
cmp dword [ebp - 0x1a4], 0
lea eax, [ebx - 1]
je 0x41f070
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41f055
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
jmp 0x41f088
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41f070
mov cx, word [0x59cc4c]
mov word [eax], cx
mov dl, byte [0x59cc4e]
mov byte [eax + 2], dl
mov eax, dword [ebp - 0x19c]
mov esi, dword [eax + 0xef]
test esi, esi
je 0x41f219
xor ecx, ecx
mov dword [ebp - 0x198], ecx
test esi, esi
jns 0x41f1ad
cmp byte [ebx], cl
je 0x41f0c8
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f0b6
mov dx, word [0x59c7f8]
mov word [edi], dx
mov eax, dword [ebp - 0x1b8]
movzx edx, word [eax + 0x3bf]
neg esi
cmp edx, esi
jge 0x41f0e6
mov ecx, 1
mov dword [ebp - 0x198], 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 0x41f122
lea eax, [ebx - 1]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41f107
mov cx, word [0x59cc90]
mov word [eax], cx
mov cl, byte [0x59cc92]
mov byte [eax + 2], cl
mov eax, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41f127
push edx
sub eax, esi
push edi
push 0x4e41
mov esi, eax
call fcn.004856b0
add esp, 4
push eax
lea edx, [ebx + esi]
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
push str._s___d._02d
push edx
call esi
add esp, 0x14
cmp dword [ebp - 0x198], 0
je 0x41f21f
cmp dword [ebp - 0x1a4], 0
lea eax, [ebx - 1]
je 0x41f190
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41f170
mov cx, word [0x59cc8c]
mov word [eax], cx
mov dl, byte [0x59cc8e]
mov byte [eax + 2], dl
jmp 0x41f21f
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41f190
mov cx, word [0x59cc4c]
mov word [eax], cx
mov dl, byte [0x59cc4e]
mov byte [eax + 2], dl
jmp 0x41f21f
cmp byte [ebx], cl
je 0x41f1c5
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f1b4
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41f1d0
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.004856b0
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
add esp, 4
push eax
lea edx, [ebx + edi]
push str._s__d._02d
push edx
call esi
add esp, 0x14
jmp 0x41f21f
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebp - 0x19c]
mov al, byte [ecx + 0x142]
test al, al
je 0x41f24e
push 0
push 1
lea ecx, [ebx + 2]
push ecx
movzx edx, al
push 0x5ec5
push edx
call fcn.0040f8d0
mov ecx, dword [ebp - 0x19c]
add esp, 0x14
cmp byte [ecx + 0x145], 0
je 0x41f2a8
cmp byte [ebx], 0
je 0x41f271
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f260
mov ax, word [0x59c7f8]
mov word [edi], ax
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41f276
mov ecx, dword [ebp - 0x19c]
sub eax, edx
movzx edx, byte [ecx + 0x145]
push edx
push 0x535b
mov edi, eax
call fcn.004856b0
add esp, 4
push eax
lea eax, [ebx + edi]
push eax
call esi
add esp, 0xc
jmp 0x41f30f
cmp byte [ecx + 0x144], 0
je 0x41f30f
cmp byte [ebx], 0
je 0x41f2d2
lea edi, [ebx - 1]
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f2c0
mov cx, word [0x59c7f8]
mov word [edi], cx
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41f2d7
sub eax, edx
mov edx, dword [ebp - 0x19c]
mov edi, eax
movzx eax, byte [edx + 0x144]
push eax
push 0x525b
call fcn.004856b0
add esp, 4
push eax
lea ecx, [ebx + edi]
push ecx
call esi
add esp, 0xc
jmp 0x41f30f
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
cmp dword [ebp - 0x1bc], 0
jne 0x41f3eb
mov eax, dword [ebp - 0x19c]
cmp byte [eax + 0x2f3], 0
je 0x41f3eb
mov ecx, dword [eax + 0x2f5]
test ecx, ecx
je 0x41f3eb
cmp byte [ebx], 0
je 0x41f357
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f345
mov dx, word [0x59c7f8]
mov word [edi], dx
lea eax, [ebp - 0x84]
push eax
mov eax, 0x10624dd3
mul ecx
shr edx, 6
push 0x5e75
push edx
call fcn.00440ba0
add esp, 0xc
lea eax, [ebx - 1]
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41f380
mov cx, word [0x59cc4c]
mov word [eax], cx
mov dl, byte [0x59cc4e]
mov byte [eax + 2], dl
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41f3a0
sub eax, edx
mov edi, eax
lea eax, [ebp - 0x84]
push eax
push 0x5395
call fcn.004856b0
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 0x41f3d0
mov dx, word [0x59ccd0]
mov word [eax], dx
mov cl, byte [0x59ccd2]
mov byte [eax + 2], cl
cmp dword [ebp - 0x1cc], 0
jne 0x41f400
test dword [ebp - 0x1c8], 0x5000000
je 0x41f41b
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x1b0]
push edx
push ebx
push eax
push ecx
call fcn.00412250
add esp, 0x10
cmp byte [ebx], 0x40
push 0
push 0
push 0
push 1
jne 0x41f435
mov edx, dword [ebp - 0x1ac]
push edx
lea eax, [ebx + 2]
push eax
jmp 0x41f43d
mov ecx, dword [ebp - 0x1ac]
push ecx
push ebx
call fcn.0040fc00
add esp, 0x18
dec ebx
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x41f446
mov dx, word [0x59cc8c]
mov word [ebx], dx
mov al, byte [0x59cc8e]
mov byte [ebx + 2], al
pop esi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.00549540
mov esp, ebp
pop ebp
ret