Function at 0x4198c0
Capabilities:
Contain obfuscated stackstrings
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x51e846
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x24c
push ebx
push ebp
push esi
mov ebp, ecx
xor esi, esi
push edi
push esi
lea ecx, [esp + 0x1c]
call fcn.004f5870
push esi
lea ecx, [esp + 0x28]
mov dword [esp + 0x268], esi
call fcn.004f5870
push esi
lea ecx, [esp + 0x20]
mov byte [esp + 0x268], 1
call fcn.004f5870
mov edi, 0x530160
mov word [esp + 0x9c], 0xffff
mov dword [esp + 0x98], edi
mov word [esp + 0x9e], si
mov byte [esp + 0x264], 3
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x548748
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5492c0
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5492b8
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5492b0
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5492a8
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5492a0
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549298
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549290
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549288
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549280
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549278
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549270
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549268
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549260
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549258
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549250
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549248
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549240
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0x98]
push eax
call fcn.004fa550
or ebx, 0xffffffff
cmp ax, bx
je 0x41d416
movsx eax, word [esp + 0x9c]
cmp eax, 0x10
ja case.default.0x419b82
jmp dword [eax*4 + 0x41d46c]
mov dword [esp + 0xa0], edi
mov word [esp + 0xa4], bx
mov word [esp + 0xa6], si
push ecx
mov byte [esp + 0x268], 4
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5492c0
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
lea ecx, [esp + 0xa0]
push ecx
mov ecx, dword [0x5540a8]
call fcn.004fa550
cmp ax, bx
je 0x419e90
movsx eax, word [esp + 0xa4]
sub eax, esi
je 0x419d64
dec eax
jne case.0x419b82.0
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 9
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 4
call fcn.004f91a0
push 8
push 0x54921c
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549210
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea edx, [esp + 0x18]
mov ecx, ebp
push edx
call fcn.004d3100
lea eax, [esp + 0x1c]
mov ecx, ebp
push eax
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
mov byte [esp + 0x274], 0xa
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 4
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x419d39
mov dword [esp + 0x34], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xb
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 4
call fcn.004f91a0
jmp case.0x419b82.0
mov dword [esp + 0x34], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xc
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x549200
jmp 0x419e4c
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 5
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 4
call fcn.004f91a0
push 8
push 0x5491f4
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549210
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
mov byte [esp + 0x274], 6
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 4
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x419e68
mov dword [esp + 0x34], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 7
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 4
call fcn.004f91a0
jmp case.0x419b82.0
mov dword [esp + 0x34], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 8
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x549200
jmp 0x419e4c
mov byte [esp + 0x264], 3
mov dword [esp + 0xa0], edi
jmp case.default.0x419b82
lea ecx, [esp + 0x44]
call fcn.004f8480
mov al, byte [esp + 0x2d]
sub esp, 0x10
mov ebx, esp
mov edi, 0x5491f0
or ecx, 0xffffffff
mov dword [esp + 0x38], esp
mov byte [ebx], al
xor eax, eax
mov dword [ebx + 4], esi
mov dword [ebx + 8], esi
mov dword [ebx + 0xc], esi
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [esp + 0x278], 0xd
mov dword [esp + 0x34], ecx
push ecx
mov ecx, ebx
call fcn.004016f0
test al, al
je 0x419f17
mov eax, dword [esp + 0x30]
mov edi, dword [ebx + 4]
mov ecx, eax
mov esi, 0x5491f0
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 4]
mov dword [ebx + 8], eax
add eax, ecx
xor esi, esi
mov byte [eax], 0
sub esp, 0x10
lea eax, [esp + 0x4d]
mov ecx, esp
mov dword [esp + 0x40], esp
push eax
push 0x548328
mov byte [esp + 0x28c], 0xe
call fcn.00401030
sub esp, 0x10
lea edx, [esp + 0x9e]
mov ecx, esp
mov dword [esp + 0x88], esp
push edx
push 0x548324
mov byte [esp + 0x29c], 0xf
call fcn.00401030
sub esp, 0x10
lea eax, [esp + 0x6f]
mov ecx, esp
mov dword [esp + 0x9c], esp
push eax
push 0x554048
mov byte [esp + 0x2ac], 0x10
call fcn.00401030
push ecx
mov byte [esp + 0x2a8], 0x11
mov ecx, esp
mov dword [esp + 0x58], esp
push 6
push 0x5492b8
call fcn.004f58e0
push ecx
mov byte [esp + 0x2ac], 0x12
mov ecx, esp
mov dword [esp + 0x58], esp
push 6
push 0x5491e8
call fcn.004f58e0
lea ecx, [esp + 0x1d4]
mov byte [esp + 0x2ac], 0xd
push ecx
mov ecx, 0x5540a8
call fcn.004f9710
mov dx, word [eax]
mov ecx, dword [0x530168]
lea edi, [eax + 4]
mov word [esp + 0x44], dx
mov byte [esp + 0x264], 0x13
mov eax, dword [edi + 8]
mov ebx, eax
cmp ecx, ebx
jae 0x419ff4
mov ebx, ecx
lea edx, [esp + 0x48]
cmp edx, edi
jne 0x41a017
push ecx
push ebx
lea ecx, [esp + 0x50]
call fcn.004015b0
push esi
push esi
lea ecx, [esp + 0x50]
call fcn.004015b0
jmp 0x41a0a2
cmp ebx, esi
jbe 0x41a064
cmp ebx, eax
jne 0x41a064
mov eax, dword [edi + 4]
cmp eax, esi
jne 0x41a02b
mov eax, 0x530164
cmp byte [eax - 1], 0xfe
jae 0x41a064
push 1
lea ecx, [esp + 0x4c]
call fcn.004013e0
mov eax, dword [edi + 4]
cmp eax, esi
jne 0x41a048
mov eax, 0x530164
mov dword [esp + 0x4c], eax
mov ecx, dword [edi + 8]
mov dword [esp + 0x50], ecx
mov edi, dword [edi + 0xc]
mov dword [esp + 0x54], edi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x41a0a2
push 1
push ebx
lea ecx, [esp + 0x50]
call fcn.004016f0
test al, al
je 0x41a0a2
mov edi, dword [edi + 4]
cmp edi, esi
mov esi, 0x530164
je 0x41a082
mov esi, edi
mov edi, dword [esp + 0x4c]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x4c]
call fcn.004016d0
xor esi, esi
mov eax, dword [esp + 0x194]
mov byte [esp + 0x264], 0xd
cmp eax, esi
je 0x41a0d2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41a0c9
cmp al, 0xff
je 0x41a0c9
dec al
mov byte [ecx], al
jmp 0x41a0d2
push ecx
call fcn.00514140
add esp, 4
lea ecx, [esp + 0x44]
mov dword [esp + 0x194], esi
mov dword [esp + 0x198], esi
mov dword [esp + 0x19c], esi
call fcn.004f86d0
cmp ax, 2
jne 0x41a139
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x264], 3
cmp eax, esi
je 0x41a123
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41a11a
cmp al, 0xff
je 0x41a11a
dec al
mov byte [ecx], al
jmp 0x41a123
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
mov edi, 0x530160
jmp case.default.0x419b82
lea ecx, [esp + 0x128]
push ecx
lea ecx, [esp + 0x48]
call fcn.004f86e0
mov ecx, dword [eax + 8]
mov byte [esp + 0x264], 0x14
cmp ecx, 3
ja 0x41a1b4
lea edx, [esp + 0x158]
lea ecx, [esp + 0x44]
push edx
call fcn.004f86e0
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x15c]
cmp edx, esi
sete bl
cmp eax, esi
je 0x41a19b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41a192
cmp al, 0xff
je 0x41a192
dec al
mov byte [ecx], al
jmp 0x41a19b
push ecx
call fcn.00514140
add esp, 4
test bl, bl
mov dword [esp + 0x15c], esi
mov dword [esp + 0x160], esi
mov dword [esp + 0x164], esi
je 0x41a1b6
mov bl, 1
mov eax, dword [esp + 0x12c]
mov byte [esp + 0x264], 0xd
cmp eax, esi
je 0x41a1e6
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41a1dd
cmp al, 0xff
je 0x41a1dd
dec al
mov byte [ecx], al
jmp 0x41a1e6
push ecx
call fcn.00514140
add esp, 4
test bl, bl
mov dword [esp + 0x12c], esi
mov dword [esp + 0x130], esi
mov dword [esp + 0x134], esi
push esi
je 0x41a230
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x15
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5491e0
jmp 0x41a3be
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x16
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xd
call fcn.004f91a0
push 8
push 0x5491d4
lea ecx, [esp + 0x20]
call fcn.004f5de0
lea eax, [esp + 0x138]
lea ecx, [esp + 0x44]
push eax
call fcn.004f86e0
mov eax, dword [eax + 4]
mov byte [esp + 0x264], 0x17
cmp eax, esi
jne 0x41a2a6
mov eax, 0x530164
push eax
call fcn.00514a57
add esp, 4
lea ecx, [esp + 0x18]
push eax
push 6
call fcn.004f5c80
mov eax, dword [esp + 0x13c]
mov byte [esp + 0x264], 0xd
cmp eax, esi
je 0x41a2eb
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41a2e2
cmp al, 0xff
je 0x41a2e2
dec al
mov byte [ecx], al
jmp 0x41a2eb
push ecx
call fcn.00514140
add esp, 4
push 8
push 0x5491c8
lea ecx, [esp + 0x24]
mov dword [esp + 0x144], esi
mov dword [esp + 0x148], esi
mov dword [esp + 0x14c], esi
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x18
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0xd
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41a398
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x19
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41a3be
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x1a
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xd
call fcn.004f91a0
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x264], 3
cmp eax, esi
je 0x41a123
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41a11a
cmp al, 0xff
je 0x41a11a
dec al
mov byte [ecx], al
jmp 0x41a123
mov dword [esp + 0x70], edi
mov word [esp + 0x74], bx
mov word [esp + 0x76], si
push ecx
mov byte [esp + 0x268], 0x1b
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x5492b0
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0x70]
push eax
call fcn.004fa550
cmp ax, bx
je 0x41a7e8
movsx eax, word [esp + 0x74]
sub eax, esi
je 0x41a5d1
dec eax
jne case.0x419b82.2
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x24
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x1b
call fcn.004f91a0
push 8
push 0x5491bc
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x5491b0
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x25
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x1b
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41a5a9
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x26
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x1b
call fcn.004f91a0
jmp case.0x419b82.2
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x27
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41a58d
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x1c
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x1b
call fcn.004f91a0
push 8
push 0x5491a4
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x5491b0
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x1d
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x1b
call fcn.0040ba60
test al, al
jne 0x41a7b7
push 8
push 0x549198
lea ecx, [esp + 0x9c]
call fcn.004f58e0
push 8
push 0x54918c
lea ecx, [esp + 0x90]
mov byte [esp + 0x26c], 0x1e
call fcn.004f58e0
lea eax, [esp + 0x94]
lea ecx, [esp + 0x24]
push eax
mov byte [esp + 0x268], 0x1f
call fcn.004f5c20
test al, al
je 0x41a70a
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x20
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549184
jmp 0x41a773
lea ecx, [esp + 0x88]
push ecx
lea ecx, [esp + 0x28]
call fcn.004f5c20
push esi
push 1
push ecx
test al, al
mov ecx, esp
je 0x41a74d
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x21
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x54917c
jmp 0x41a773
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x22
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x1f
call fcn.004f91a0
lea ecx, [esp + 0x88]
mov byte [esp + 0x264], 0x1e
call fcn.004f5980
lea ecx, [esp + 0x94]
mov byte [esp + 0x264], 0x1b
call fcn.004f5980
jmp case.0x419b82.2
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x23
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41a58d
mov byte [esp + 0x264], 3
mov dword [esp + 0x70], edi
jmp case.default.0x419b82
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x28
call fcn.004f91a0
mov dword [esp + 0x78], edi
mov word [esp + 0x7c], bx
mov word [esp + 0x7e], si
push ecx
mov byte [esp + 0x268], 0x28
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x5492a8
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea edx, [esp + 0x78]
push edx
call fcn.004fa550
cmp ax, bx
je 0x41aad6
movsx eax, word [esp + 0x7c]
sub eax, esi
je 0x41a9c5
dec eax
jne case.0x419b82.3
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x2d
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x28
call fcn.004f91a0
push 8
push 0x549170
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549164
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x2e
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x28
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41a99a
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x2f
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41a7f9
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x30
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41a800
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x29
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x28
call fcn.004f91a0
push 8
push 0x549158
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549164
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x2a
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x28
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41aaab
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x2b
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41a7f9
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x2c
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41a800
mov byte [esp + 0x264], 3
mov dword [esp + 0x78], edi
jmp case.default.0x419b82
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x31
call fcn.004f91a0
mov dword [esp + 0x80], edi
mov word [esp + 0x84], bx
mov word [esp + 0x86], si
push ecx
mov byte [esp + 0x268], 0x31
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x5492a0
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0x80]
push eax
call fcn.004fa550
cmp ax, bx
je 0x41add3
movsx eax, word [esp + 0x84]
sub eax, esi
je 0x41acc2
dec eax
jne case.0x419b82.4
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x36
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x31
call fcn.004f91a0
push 8
push 0x54914c
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549140
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x37
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x31
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41ac97
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x38
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41aae7
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x39
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41aaee
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x32
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x31
call fcn.004f91a0
push 8
push 0x549134
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549140
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x33
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x31
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41ada8
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x34
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41aae7
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x35
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41aaee
mov byte [esp + 0x264], 3
mov dword [esp + 0x80], edi
jmp case.default.0x419b82
mov dword [esp + 0x8c], edi
mov word [esp + 0x90], bx
mov word [esp + 0x92], si
push ecx
mov byte [esp + 0x268], 0x3a
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x5492a0
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0x8c]
push eax
call fcn.004fa550
cmp ax, bx
je 0x41b164
movsx eax, word [esp + 0x90]
sub eax, esi
je 0x41afbf
dec eax
jne case.0x419b82.5
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x41
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x3a
call fcn.004f91a0
push 8
push 0x549128
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x54911c
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x42
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x3a
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41af97
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x43
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x3a
call fcn.004f91a0
jmp case.0x419b82.5
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x44
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41af7b
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x3b
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x3a
call fcn.004f91a0
push 8
push 0x549110
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x54911c
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x3c
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x3a
call fcn.0040ba60
test al, al
jne 0x41b133
push 8
push 0x549104
lea ecx, [esp + 0xb8]
call fcn.004f58e0
lea eax, [esp + 0xb0]
lea ecx, [esp + 0x24]
push eax
mov byte [esp + 0x268], 0x3d
call fcn.004f5c20
push esi
push 1
push ecx
test al, al
mov ecx, esp
je 0x41b0dd
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x3e
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5490fc
jmp 0x41b103
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x3f
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x3d
call fcn.004f91a0
lea ecx, [esp + 0xb0]
mov byte [esp + 0x264], 0x3a
call fcn.004f5980
jmp case.0x419b82.5
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x40
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41af7b
mov byte [esp + 0x264], 3
mov dword [esp + 0x8c], edi
jmp case.default.0x419b82
lea ecx, [esp + 0x30]
call fcn.004f8480
mov cl, byte [esp + 0x2f]
sub esp, 0x10
mov ebx, esp
xor esi, esi
mov edi, 0x54832c
xor eax, eax
mov byte [ebx], cl
or ecx, 0xffffffff
mov dword [ebx + 4], esi
mov dword [ebx + 8], esi
mov dword [ebx + 0xc], esi
mov dword [esp + 0x20], esp
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov dword [esp + 0x34], ecx
push ecx
mov ecx, ebx
mov byte [esp + 0x27c], 0x45
call fcn.004016f0
test al, al
je 0x41b1ed
mov eax, dword [esp + 0x30]
mov edi, dword [ebx + 4]
mov ecx, eax
mov esi, 0x54832c
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 4]
mov dword [ebx + 8], eax
add eax, ecx
xor esi, esi
mov byte [eax], 0
sub esp, 0x10
lea eax, [esp + 0x8d]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
push 0x548328
mov byte [esp + 0x28c], 0x46
call fcn.00401030
sub esp, 0x10
lea edx, [esp + 0x96]
mov ecx, esp
mov dword [esp + 0x8c], esp
push edx
push 0x548324
mov byte [esp + 0x29c], 0x47
call fcn.00401030
sub esp, 0x10
lea eax, [esp + 0x6e]
mov ecx, esp
mov dword [esp + 0x98], esp
push eax
push 0x554048
mov byte [esp + 0x2ac], 0x48
call fcn.00401030
push ecx
mov byte [esp + 0x2a8], 0x49
mov ecx, esp
mov dword [esp + 0x6c], esp
push 6
push 0x549290
call fcn.004f58e0
push ecx
mov byte [esp + 0x2ac], 0x4a
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x5490f4
call fcn.004f58e0
lea ecx, [esp + 0x1c0]
mov byte [esp + 0x2ac], 0x45
push ecx
mov ecx, 0x5540a8
call fcn.004f9710
mov dx, word [eax]
mov ecx, dword [0x530168]
lea edi, [eax + 4]
mov word [esp + 0x30], dx
mov byte [esp + 0x264], 0x4b
mov eax, dword [edi + 8]
mov ebx, eax
cmp ecx, ebx
jae 0x41b2cd
mov ebx, ecx
lea edx, [esp + 0x34]
cmp edx, edi
jne 0x41b2f0
push ecx
push ebx
lea ecx, [esp + 0x3c]
call fcn.004015b0
push esi
push esi
lea ecx, [esp + 0x3c]
call fcn.004015b0
jmp 0x41b37d
cmp ebx, esi
jbe 0x41b33d
cmp ebx, eax
jne 0x41b33d
mov eax, dword [edi + 4]
cmp eax, esi
jne 0x41b304
mov eax, 0x530164
cmp byte [eax - 1], 0xfe
jae 0x41b33d
push 1
lea ecx, [esp + 0x38]
call fcn.004013e0
mov eax, dword [edi + 4]
cmp eax, esi
jne 0x41b321
mov eax, 0x530164
mov dword [esp + 0x38], eax
mov ecx, dword [edi + 8]
mov dword [esp + 0x3c], ecx
mov edi, dword [edi + 0xc]
mov dword [esp + 0x40], edi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x41b37d
push 1
push ebx
lea ecx, [esp + 0x3c]
call fcn.004016f0
test al, al
je 0x41b37d
mov edi, dword [edi + 4]
cmp edi, esi
mov esi, 0x530164
je 0x41b35b
mov esi, edi
mov edi, dword [esp + 0x38]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x3c], ebx
xor esi, esi
mov byte [ebx + ecx], 0
mov eax, dword [esp + 0x180]
mov byte [esp + 0x264], 0x45
cmp eax, esi
je 0x41b3ad
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41b3a4
cmp al, 0xff
je 0x41b3a4
dec al
mov byte [ecx], al
jmp 0x41b3ad
push ecx
call fcn.00514140
add esp, 4
lea ecx, [esp + 0x30]
mov dword [esp + 0x180], esi
mov dword [esp + 0x184], esi
mov dword [esp + 0x188], esi
call fcn.004f86d0
cmp ax, 2
jne 0x41b416
mov eax, dword [esp + 0x38]
mov byte [esp + 0x264], 3
cmp eax, esi
je 0x41b3fe
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41b3f5
cmp al, 0xff
je 0x41b3f5
dec al
mov byte [ecx], al
jmp 0x41b3fe
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
mov edi, 0x530160
xor esi, esi
jmp case.default.0x419b82
lea edx, [esp + 0x148]
lea ecx, [esp + 0x30]
push edx
call fcn.004f86e0
mov ecx, dword [eax + 8]
mov byte [esp + 0x264], 0x4c
cmp ecx, 3
ja 0x41b491
lea eax, [esp + 0x168]
lea ecx, [esp + 0x30]
push eax
call fcn.004f86e0
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x16c]
cmp edx, esi
sete bl
cmp eax, esi
je 0x41b478
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41b46f
cmp al, 0xff
je 0x41b46f
dec al
mov byte [ecx], al
jmp 0x41b478
push ecx
call fcn.00514140
add esp, 4
test bl, bl
mov dword [esp + 0x16c], esi
mov dword [esp + 0x170], esi
mov dword [esp + 0x174], esi
je 0x41b493
mov bl, 1
mov eax, dword [esp + 0x14c]
mov byte [esp + 0x264], 0x45
cmp eax, esi
je 0x41b4c3
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41b4ba
cmp al, 0xff
je 0x41b4ba
dec al
mov byte [ecx], al
jmp 0x41b4c3
push ecx
call fcn.00514140
add esp, 4
test bl, bl
mov dword [esp + 0x14c], esi
mov dword [esp + 0x150], esi
mov dword [esp + 0x154], esi
push esi
je 0x41b50d
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x4d
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5491e0
jmp 0x41b69b
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x4e
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x45
call fcn.004f91a0
push 8
push 0x5490e8
lea ecx, [esp + 0x20]
call fcn.004f5de0
lea ecx, [esp + 0x118]
push ecx
lea ecx, [esp + 0x34]
call fcn.004f86e0
mov eax, dword [eax + 4]
mov byte [esp + 0x264], 0x4f
cmp eax, esi
jne 0x41b583
mov eax, 0x530164
push eax
call fcn.00514a57
add esp, 4
lea ecx, [esp + 0x18]
push eax
push 6
call fcn.004f5c80
mov eax, dword [esp + 0x11c]
mov byte [esp + 0x264], 0x45
cmp eax, esi
je 0x41b5c8
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41b5bf
cmp al, 0xff
je 0x41b5bf
dec al
mov byte [ecx], al
jmp 0x41b5c8
push ecx
call fcn.00514140
add esp, 4
push 8
push 0x5490dc
lea ecx, [esp + 0x24]
mov dword [esp + 0x124], esi
mov dword [esp + 0x128], esi
mov dword [esp + 0x12c], esi
call fcn.004f5de0
lea edx, [esp + 0x18]
mov ecx, ebp
push edx
call fcn.004d3100
lea eax, [esp + 0x1c]
mov ecx, ebp
push eax
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x50
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x45
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41b675
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x51
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41b69b
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x52
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x45
call fcn.004f91a0
mov eax, dword [esp + 0x38]
mov byte [esp + 0x264], 3
cmp eax, esi
je 0x41b3fe
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x41b3f5
cmp al, 0xff
je 0x41b3f5
dec al
mov byte [ecx], al
jmp 0x41b3fe
lea ecx, [esp + 0xdc]
call fcn.004f8480
mov al, byte [esp + 0x2e]
sub esp, 0x10
mov ebx, esp
xor esi, esi
mov edi, 0x54832c
or ecx, 0xffffffff
mov byte [ebx], al
mov dword [ebx + 4], esi
mov dword [ebx + 8], esi
xor eax, eax
mov dword [ebx + 0xc], esi
mov dword [esp + 0x20], esp
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov dword [esp + 0x34], ecx
push ecx
mov ecx, ebx
mov byte [esp + 0x27c], 0x53
call fcn.004016f0
test al, al
je 0x41b75d
mov eax, dword [esp + 0x30]
mov edi, dword [ebx + 4]
mov ecx, eax
mov esi, 0x54832c
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebx + 8], eax
mov ecx, dword [ebx + 4]
add eax, ecx
xor esi, esi
mov byte [eax], 0
sub esp, 0x10
lea eax, [esp + 0x88]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
push 0x548328
mov byte [esp + 0x28c], 0x54
call fcn.00401030
sub esp, 0x10
lea edx, [esp + 0x9c]
mov ecx, esp
mov dword [esp + 0x8c], esp
push edx
push 0x548324
mov byte [esp + 0x29c], 0x55
call fcn.00401030
sub esp, 0x10
lea eax, [esp + 0xa3]
mov ecx, esp
mov dword [esp + 0x98], esp
push eax
push 0x554048
mov byte [esp + 0x2ac], 0x56
call fcn.00401030
push ecx
mov byte [esp + 0x2a8], 0x57
mov ecx, esp
mov dword [esp + 0x6c], esp
push 6
push 0x549288
call fcn.004f58e0
push ecx
mov byte [esp + 0x2ac], 0x58
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x5490d4
call fcn.004f58e0
lea ecx, [esp + 0x268]
mov byte [esp + 0x2ac], 0x53
push ecx
mov ecx, 0x5540a8
call fcn.004f9710
mov ecx, dword [0x530168]
mov dx, word [eax]
push ecx
add eax, 4
push esi
push eax
lea ecx, [esp + 0xec]
mov byte [esp + 0x270], 0x59
mov word [esp + 0xe8], dx
call fcn.004011e0
lea ecx, [esp + 0x220]
mov byte [esp + 0x264], 0x53
call fcn.004335b0
lea ecx, [esp + 0xdc]
call fcn.004f86d0
cmp ax, 2
je 0x41ba96
lea edx, [esp + 0x1a0]
lea ecx, [esp + 0xdc]
push edx
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x5a
call fcn.0041fe60
cmp eax, 3
ja 0x41b8d9
lea eax, [esp + 0x210]
lea ecx, [esp + 0xdc]
push eax
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x5b
call fcn.0041fe60
test eax, eax
lea ecx, [esp + 0x210]
mov byte [esp + 0x264], 0x5a
sete bl
call fcn.004010f0
test bl, bl
je 0x41b8db
mov bl, 1
lea ecx, [esp + 0x1a0]
mov byte [esp + 0x264], 0x53
call fcn.004010f0
test bl, bl
push esi
je 0x41b924
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x5c
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5491e0
jmp 0x41ba7f
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x5d
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x53
call fcn.004f91a0
push 8
push 0x5490c8
lea ecx, [esp + 0x20]
call fcn.004f5de0
lea ecx, [esp + 0x1d0]
push ecx
lea ecx, [esp + 0xe0]
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x5e
call fcn.0040b060
push eax
call fcn.00514a57
add esp, 4
lea ecx, [esp + 0x18]
push eax
push 6
call fcn.004f5c80
lea ecx, [esp + 0x1d0]
mov byte [esp + 0x264], 0x53
call fcn.004010f0
push 8
push 0x5490bc
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea edx, [esp + 0x18]
mov ecx, ebp
push edx
call fcn.004d3100
lea eax, [esp + 0x1c]
mov ecx, ebp
push eax
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x5f
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x53
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41ba59
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x60
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41ba7f
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x61
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x53
call fcn.004f91a0
lea ecx, [esp + 0xdc]
mov byte [esp + 0x264], 3
call fcn.004335b0
mov edi, 0x530160
xor esi, esi
jmp case.default.0x419b82
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x62
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 3
call fcn.004f91a0
push 8
push 0x5490b0
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x5490a4
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x63
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 3
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41bbba
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x64
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 3
call fcn.004f91a0
jmp case.default.0x419b82
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x65
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41bb9e
lea ecx, [esp + 0xf0]
call fcn.004f8480
sub esp, 0x10
lea eax, [esp + 0x75]
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
push 0x54832c
mov byte [esp + 0x27c], 0x66
call fcn.00401030
sub esp, 0x10
lea edx, [esp + 0x87]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
push 0x548328
mov byte [esp + 0x28c], 0x67
call fcn.00401030
sub esp, 0x10
lea eax, [esp + 0x99]
mov ecx, esp
mov dword [esp + 0x8c], esp
push eax
push 0x548324
mov byte [esp + 0x29c], 0x68
call fcn.00401030
sub esp, 0x10
lea edx, [esp + 0xab]
mov ecx, esp
mov dword [esp + 0x98], esp
push edx
push 0x554048
mov byte [esp + 0x2ac], 0x69
call fcn.00401030
push ecx
mov byte [esp + 0x2a8], 0x6a
mov ecx, esp
mov dword [esp + 0x6c], esp
push 6
push 0x549260
call fcn.004f58e0
push ecx
mov byte [esp + 0x2ac], 0x6b
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x549184
call fcn.004f58e0
lea eax, [esp + 0x27c]
mov ecx, 0x5540a8
push eax
mov byte [esp + 0x2b0], 0x66
call fcn.004f9710
push eax
lea ecx, [esp + 0xf4]
mov byte [esp + 0x268], 0x6c
call fcn.0041d4d0
lea ecx, [esp + 0x234]
mov byte [esp + 0x264], 0x66
call fcn.004335b0
lea ecx, [esp + 0xf0]
call fcn.004f86d0
cmp ax, 2
jne 0x41bd21
lea ecx, [esp + 0xf0]
mov byte [esp + 0x264], 3
call fcn.004335b0
jmp case.default.0x419b82
lea ecx, [esp + 0x1f0]
push ecx
lea ecx, [esp + 0xf4]
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x6d
call fcn.0041fe60
cmp eax, 3
ja 0x41bd89
lea edx, [esp + 0x200]
lea ecx, [esp + 0xf0]
push edx
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x6e
call fcn.0041fe60
test eax, eax
lea ecx, [esp + 0x200]
mov byte [esp + 0x264], 0x6d
sete bl
call fcn.004010f0
test bl, bl
je 0x41bd8b
mov bl, 1
lea ecx, [esp + 0x1f0]
mov byte [esp + 0x264], 0x66
call fcn.004010f0
test bl, bl
push esi
je 0x41bdff
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x6f
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5491e0
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x66
call fcn.004f91a0
lea ecx, [esp + 0xf0]
mov byte [esp + 0x264], 3
call fcn.004335b0
jmp case.default.0x419b82
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x70
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x66
call fcn.004f91a0
push 8
push 0x549098
lea ecx, [esp + 0x20]
call fcn.004f5de0
lea eax, [esp + 0x1b0]
lea ecx, [esp + 0xf0]
push eax
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x71
call fcn.0040b060
push eax
call fcn.00514a57
add esp, 4
lea ecx, [esp + 0x18]
push eax
push 6
call fcn.004f5c80
lea ecx, [esp + 0x1b0]
mov byte [esp + 0x264], 0x66
call fcn.004010f0
push 8
push 0x54908c
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x72
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x66
call fcn.0040ba60
test al, al
jne 0x41bfd2
push 8
push 0x549080
lea ecx, [esp + 0xb4]
call fcn.004f58e0
lea eax, [esp + 0xac]
lea ecx, [esp + 0x24]
push eax
mov byte [esp + 0x268], 0x73
call fcn.004f5c20
push esi
push 1
push ecx
test al, al
mov ecx, esp
je 0x41bf68
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x74
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549078
jmp 0x41bf8e
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x75
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x73
call fcn.004f91a0
lea ecx, [esp + 0xac]
mov byte [esp + 0x264], 0x66
call fcn.004f5980
lea ecx, [esp + 0xf0]
mov byte [esp + 0x264], 3
call fcn.004335b0
jmp case.default.0x419b82
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x76
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41bdcf
lea ecx, [esp + 0xb4]
call fcn.0041d4b0
push ecx
mov byte [esp + 0x268], 0x77
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549270
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
lea ecx, [esp + 0xb4]
push ecx
mov ecx, dword [0x5540a8]
call fcn.004fa550
cmp ax, bx
je 0x41c2f5
movsx eax, word [esp + 0xb8]
sub eax, esi
je 0x41c1b5
dec eax
jne 0x41c2dc
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x7c
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x77
call fcn.004f91a0
push 8
push 0x54906c
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549060
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea edx, [esp + 0x18]
mov ecx, ebp
push edx
call fcn.004d3100
lea eax, [esp + 0x1c]
mov ecx, ebp
push eax
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x7d
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x77
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41c191
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x7e
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41c2c5
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x7f
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41c2be
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x78
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x77
call fcn.004f91a0
push 8
push 0x549054
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549060
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x79
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x77
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41c29f
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x7a
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41c2c5
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x7b
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x77
call fcn.004f91a0
lea ecx, [esp + 0xb4]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.0x419b82.10
lea ecx, [esp + 0xb4]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.default.0x419b82
lea ecx, [esp + 0x104]
call fcn.004f8480
sub esp, 0x10
lea eax, [esp + 0x72]
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
push 0x549050
mov byte [esp + 0x27c], 0x80
call fcn.00401030
sub esp, 0x10
lea edx, [esp + 0x8f]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
push 0x54904c
mov byte [esp + 0x28c], 0x81
call fcn.00401030
sub esp, 0x10
lea eax, [esp + 0x94]
mov ecx, esp
mov dword [esp + 0x8c], esp
push eax
push 0x548324
mov byte [esp + 0x29c], 0x82
call fcn.00401030
sub esp, 0x10
lea edx, [esp + 0xaa]
mov ecx, esp
mov dword [esp + 0x98], esp
push edx
push 0x554048
mov byte [esp + 0x2ac], 0x83
call fcn.00401030
push ecx
mov byte [esp + 0x2a8], 0x84
mov ecx, esp
mov dword [esp + 0x6c], esp
push 6
push 0x549250
call fcn.004f58e0
push ecx
mov byte [esp + 0x2ac], 0x85
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x5490fc
call fcn.004f58e0
lea eax, [esp + 0x290]
mov ecx, 0x5540a8
push eax
mov byte [esp + 0x2b0], 0x80
call fcn.004f9710
push eax
lea ecx, [esp + 0x108]
mov byte [esp + 0x268], 0x86
call fcn.0041d4d0
lea ecx, [esp + 0x248]
mov byte [esp + 0x264], 0x80
call fcn.004335b0
lea ecx, [esp + 0x104]
call fcn.004f86d0
cmp ax, 2
je 0x41c6c0
lea ecx, [esp + 0x1c0]
push ecx
lea ecx, [esp + 0x108]
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x87
call fcn.0041fe60
cmp eax, 1
lea ecx, [esp + 0x1c0]
setne bl
mov byte [esp + 0x264], 0x80
call fcn.004010f0
test bl, bl
push esi
je 0x41c4aa
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x88
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5491e0
jmp 0x41c6a9
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x89
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x80
call fcn.004f91a0
push 8
push 0x549040
lea ecx, [esp + 0x20]
call fcn.004f5de0
lea edx, [esp + 0x1e0]
lea ecx, [esp + 0x104]
push edx
call fcn.004f86e0
mov ecx, eax
mov byte [esp + 0x264], 0x8a
call fcn.0040b060
push eax
call fcn.00514a57
add esp, 4
lea ecx, [esp + 0x18]
push eax
push 6
call fcn.004f5c80
lea ecx, [esp + 0x1e0]
mov byte [esp + 0x264], 0x80
call fcn.004010f0
push 8
push 0x549034
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x8b
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x80
call fcn.0040ba60
test al, al
jne 0x41c67d
push 8
push 0x549028
lea ecx, [esp + 0xb0]
call fcn.004f58e0
lea eax, [esp + 0xa8]
lea ecx, [esp + 0x24]
push eax
mov byte [esp + 0x268], 0x8c
call fcn.004f5c20
push esi
push 1
push ecx
test al, al
mov ecx, esp
je 0x41c613
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x8d
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549078
jmp 0x41c639
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x8e
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x8c
call fcn.004f91a0
lea ecx, [esp + 0xa8]
mov byte [esp + 0x264], 0x80
call fcn.004f5980
lea ecx, [esp + 0x104]
mov byte [esp + 0x264], 3
call fcn.004335b0
jmp case.default.0x419b82
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x8f
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x80
call fcn.004f91a0
lea ecx, [esp + 0x104]
mov byte [esp + 0x264], 3
call fcn.004335b0
jmp case.default.0x419b82
lea ecx, [esp + 0xbc]
call fcn.0041d4b0
push ecx
mov byte [esp + 0x268], 0x90
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549260
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
lea ecx, [esp + 0xbc]
push ecx
mov ecx, dword [0x5540a8]
call fcn.004fa550
cmp ax, bx
je 0x41c9cb
movsx eax, word [esp + 0xc0]
sub eax, esi
je 0x41c88b
dec eax
jne 0x41c9b2
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x95
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x90
call fcn.004f91a0
push 8
push 0x54901c
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549010
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea edx, [esp + 0x18]
mov ecx, ebp
push edx
call fcn.004d3100
lea eax, [esp + 0x1c]
mov ecx, ebp
push eax
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x96
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x90
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41c867
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x97
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41c99b
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x98
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41c994
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x91
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x90
call fcn.004f91a0
push 8
push 0x549004
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x549010
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x92
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x90
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41c975
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x93
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41c99b
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x94
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x90
call fcn.004f91a0
lea ecx, [esp + 0xbc]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.0x419b82.12
lea ecx, [esp + 0xbc]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.default.0x419b82
lea ecx, [esp + 0xcc]
call fcn.0041d4b0
push ecx
mov byte [esp + 0x268], 0x99
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549258
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0xcc]
push eax
call fcn.004fa550
cmp ax, bx
je 0x41ccd6
movsx eax, word [esp + 0xd0]
sub eax, esi
je 0x41cb96
dec eax
jne 0x41ccbd
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x9e
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x99
call fcn.004f91a0
push 8
push 0x548ff8
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x548fec
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x9f
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x99
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41cb72
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xa0
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41cca6
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xa1
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41cc9f
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x9a
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x99
call fcn.004f91a0
push 8
push 0x548fe0
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x548fec
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0x9b
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0x99
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41cc80
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x9c
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41cca6
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0x9d
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0x99
call fcn.004f91a0
lea ecx, [esp + 0xcc]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.0x419b82.13
lea ecx, [esp + 0xcc]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.default.0x419b82
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xa2
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 3
call fcn.004f91a0
push 8
push 0x548fd4
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x548fc8
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0xa3
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 3
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41cdd5
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xa4
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41bb97
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xa5
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
jmp 0x41bb9e
lea ecx, [esp + 0xc4]
call fcn.0041d4b0
push ecx
mov byte [esp + 0x268], 0xa6
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549248
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0xc4]
push eax
call fcn.004fa550
cmp ax, bx
je 0x41d0f2
movsx eax, word [esp + 0xc8]
sub eax, esi
je 0x41cfb2
dec eax
jne 0x41d0d9
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xab
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xa6
call fcn.004f91a0
push 8
push 0x548fbc
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x548fb0
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0xac
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0xa6
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41cf8e
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xad
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41d0c2
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xae
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41d0bb
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xa7
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xa6
call fcn.004f91a0
push 8
push 0x548fa4
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x548fb0
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0xa8
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0xa6
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41d09c
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xa9
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41d0c2
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xaa
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xa6
call fcn.004f91a0
lea ecx, [esp + 0xc4]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.0x419b82.15
lea ecx, [esp + 0xc4]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.default.0x419b82
lea ecx, [esp + 0xd4]
call fcn.0041d4b0
push ecx
mov byte [esp + 0x268], 0xaf
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549240
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549238
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549230
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0xd4]
push eax
call fcn.004fa550
cmp ax, bx
je 0x41d3fd
movsx eax, word [esp + 0xd8]
sub eax, esi
je 0x41d2bd
dec eax
jne 0x41d3e4
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xb4
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xaf
call fcn.004f91a0
push 8
push 0x548f98
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x548f8c
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.004d3100
lea edx, [esp + 0x1c]
mov ecx, ebp
push edx
call fcn.004d3100
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.004f5850
lea ecx, [esp + 0x28]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0xb5
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0xaf
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41d299
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xb6
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41d3cd
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xb7
mov ecx, esp
mov dword [esp + 0x24], esp
jmp 0x41d3c6
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xb0
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549228
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xaf
call fcn.004f91a0
push 8
push 0x548f80
lea ecx, [esp + 0x20]
call fcn.004f5de0
push 8
push 0x548f8c
lea ecx, [esp + 0x24]
call fcn.004f5de0
lea eax, [esp + 0x18]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.004d3100
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x28]
lea edx, [esp + 0x1c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x274], 0xb1
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0x270], 0xaf
call fcn.0040ba60
push esi
push 1
push ecx
test al, al
mov ecx, esp
jne 0x41d3a7
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xb2
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549208
jmp 0x41d3cd
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0x274], 0xb3
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549200
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0x274], 0xaf
call fcn.004f91a0
lea ecx, [esp + 0xd4]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.0x419b82.16
lea ecx, [esp + 0xd4]
mov byte [esp + 0x264], 3
call fcn.00401000
jmp case.default.0x419b82
lea ecx, [esp + 0x1c]
mov dword [esp + 0x98], edi
mov byte [esp + 0x264], 1
call fcn.004f5980
lea ecx, [esp + 0x24]
mov byte [esp + 0x264], 0
call fcn.004f5980
lea ecx, [esp + 0x18]
mov dword [esp + 0x264], ebx
call fcn.004f5980
mov ecx, dword [esp + 0x25c]
pop edi
pop esi
pop ebp
xor ax, ax
mov dword fs:[0], ecx
pop ebx
add esp, 0x258
ret