Function at 0x4d0d49
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80
xor eax, eax
push ebx
cmp dword [ebp + 8], eax
push esi
push edi
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
je 0x4d0d9a
cmp dword [ebp + 0xc], eax
je 0x4d0d9a
mov edi, dword [ebp + 0x10]
cmp edi, eax
je 0x4d0d9a
cmp dword [ebp + 0x14], eax
je 0x4d0d9a
mov ebx, 0x1004cbe8
push ebx
push dword [ebp + 8]
call 0x50c9a8
mov esi, dword [ebp + 0x18]
pop ecx
test eax, eax
pop ecx
jne 0x4d0ea1
test esi, esi
jne 0x4d0daa
cmp dword [ebp + 0x1c], esi
je 0x4d0db0
push 0x1021
call fcn.004d9848
pop ecx
pop edi
pop esi
pop ebx
leave
ret
cmp dword [ebp + 0x1c], 0
je 0x4d0d9a
mov eax, dword [ebp + 0x14]
test esi, esi
mov dword [ebp - 8], eax
je 0x4d0ddb
mov eax, dword [esi]
mov dword [esi], edi
cmp edi, eax
ja 0x4d20cc
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x1c]
call 0x503bf8
mov eax, dword [ebp + 0x1c]
add esp, 0xc
mov dword [ebp - 8], eax
push 0x1004cb80
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d0e2e
cmp edi, 0xffff
ja 0x4d0d9a
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004b4a0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
push dword [ebp - 8]
mov eax, dword [0x1004b4a0]
push dword [ebp + 0x10]
push eax
jmp 0x4d0f20
push 0x1004cb60
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d0ea1
cmp edi, 0xffff
ja 0x4d0d9a
sub esp, 0x214
mov ebx, 0x1004b8d0
mov ecx, 0x85
mov esi, ebx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
push 4
lea eax, [ebp - 0x10]
push ebx
push eax
call 0x503bf8
push dword [ebp - 8]
push dword [ebp + 0x10]
push dword [ebp - 0x10]
call fcn.004dbc40
add esp, 0x18
test ax, ax
jne 0x4d13a1
jmp 0x4d20c1
mov ebx, 0x1004cbf8
push ebx
push dword [ebp + 8]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1134
test esi, esi
jne 0x4d0ec7
cmp dword [ebp + 0x1c], esi
je 0x4d0ed1
jmp 0x4d0d9a
cmp dword [ebp + 0x1c], 0
je 0x4d0d9a
mov eax, dword [ebp + 0x14]
test esi, esi
mov dword [ebp - 8], eax
je 0x4d0efc
mov eax, dword [esi]
mov dword [esi], edi
cmp edi, eax
ja 0x4d20cc
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x1c]
call 0x503bf8
mov eax, dword [ebp + 0x1c]
add esp, 0xc
mov dword [ebp - 8], eax
push 0x1004cb8c
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d0f2e
cmp edi, 0xffff
ja 0x4d0d9a
push dword [ebp - 8]
push edi
push eax
push ebx
call fcn.004d0297
add esp, 0x10
jmp 0x4d0da5
push 0x1004cbdc
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1057
cmp edi, 0xffff
ja 0x4d0d9a
lea eax, [ebp - 0xc]
push eax
push 1
call fcn.004ce9c9
pop ecx
test eax, eax
pop ecx
jne 0x4d0da5
mov esi, 0x1004b0f2
push 0x1004ca28
push esi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
je 0x4d0fb9
push 0x1004cc2c
push esi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
je 0x4d0fb9
sub esp, 0x2c
mov esi, 0x1004b198
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
cmp eax, 0x64656d6f
je 0x4d0fdb
cmp dword [ebp - 0xc], 0x11121314
je 0x4d0fdb
jmp 0x4d1124
sub esp, 0x2c
mov esi, 0x1004b198
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
cmp eax, 0x111213
jne 0x4d1124
lea eax, [ebp - 0xc]
push eax
push 2
call fcn.004ce9c9
pop ecx
test eax, eax
pop ecx
jne 0x4d0da5
lea eax, [ebp - 0xc]
push 4
push eax
lea eax, [ebp - 0x34]
push eax
call 0x503bf8
sub esp, 0x20
mov esi, 0x1004b1c8
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push 4
push eax
lea eax, [ebp - 0x30]
push eax
call 0x503bf8
add esp, 0x38
lea eax, [ebp - 0x2d]
push 8
pop esi
mov dl, byte [eax - 7]
lea ecx, [eax + 1]
xor dl, byte [eax]
dec esi
mov eax, ecx
mov byte [ecx], dl
jne 0x4d102e
and byte [ebp - 0x24], 0
lea eax, [ebp - 0x34]
push eax
push dword [ebp + 0x10]
push dword [ebp - 8]
push 0
call fcn.004dba9e
jmp 0x4d16af
push 0x1004cb70
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1134
cmp edi, 0xffff
ja 0x4d0d9a
sub esp, 0x214
mov ebx, 0x1004b6b8
mov ecx, 0x85
mov esi, ebx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
lea eax, [ebp - 0xc]
push eax
push 1
call fcn.004ce9c9
pop ecx
test eax, eax
pop ecx
jne 0x4d0da5
mov esi, 0x1004b0f2
push 0x1004ca28
push esi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
je 0x4d1106
push 0x1004cc2c
push esi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
je 0x4d1106
sub esp, 0x2c
mov esi, 0x1004b198
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
cmp eax, 0x64656d6f
je 0x4d112e
cmp dword [ebp - 0xc], 0x11121314
jmp 0x4d1122
sub esp, 0x2c
mov esi, 0x1004b198
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
cmp eax, 0x111213
je 0x4d112e
push 0x1062
jmp 0x4d0d9f
push ebx
jmp 0x4d1045
push 0x1004cc18
push dword [ebp + 8]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d16be
test esi, esi
jne 0x4d1159
cmp dword [ebp + 0x1c], esi
je 0x4d1163
jmp 0x4d0d9a
cmp dword [ebp + 0x1c], 0
je 0x4d0d9a
mov ebx, dword [ebp + 0x14]
test esi, esi
mov dword [ebp - 8], ebx
je 0x4d118a
mov eax, dword [esi]
mov dword [esi], edi
cmp edi, eax
ja 0x4d20cc
push edi
push ebx
mov ebx, dword [ebp + 0x1c]
push ebx
call 0x503bf8
add esp, 0xc
mov dword [ebp - 8], ebx
push 0x1004cbc8
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d13ab
push 1
call fcn.004da095
movzx eax, al
sub eax, 0
pop ecx
je 0x4d124a
dec eax
jne 0x4d20d6
mov esi, 0x1004b0f2
push 0x1004c9e0
push esi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
je 0x4d1eaa
push 0x1004c9e4
push esi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1215
push dword [ebp + 8]
call fcn.004d99a2
pop ecx
mov dword [ebp - 0x80], 0x2c
mov dword [ebp - 0x7c], 2
push edi
lea ecx, [ebp - 0x80]
push ebx
push ecx
push eax
call fcn.004f51e9
push eax
call fcn.004da2b2
jmp 0x4d1ff5
lea eax, [ebp - 0xc]
push eax
push 1
call fcn.004f4d34
test eax, eax
jne 0x4d13a1
lea eax, [ebp - 0x54]
push eax
push dword [ebp - 0xc]
call fcn.004da069
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x54]
push eax
push edi
push ebx
call fcn.004dc27c
push 0
jmp 0x4d14f3
push 2
call fcn.004da095
test al, al
pop ecx
je 0x4d1eaa
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
movzx eax, byte [eax + 0x10055bc0]
dec eax
je 0x4d138c
dec eax
je 0x4d131e
dec eax
je 0x4d12d3
dec eax
jne 0x4d20d6
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov al, byte [0x1004b1a8]
push 0
push dword [ebp - 8]
push dword [ebp + 0x10]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004edbc8
jmp 0x4d1492
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
push dword [ebp - 8]
mov al, byte [0x1004b1a8]
push dword [ebp + 0x10]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004eb8e8
jmp 0x4d14ec
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
sub esp, 0x2c
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0xc]
push 1
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.004e9b38
add esp, 0x38
test ax, ax
jne 0x4d13a1
lea eax, [ebp - 0x54]
push eax
push dword [ebp - 0xc]
call fcn.004da069
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x54]
push eax
push dword [ebp + 0x10]
push dword [ebp - 8]
jmp 0x4d123e
lea eax, [ebp - 0xc]
push eax
push 1
call fcn.004d56c5
pop ecx
mov dword [ebp - 0x10], eax
pop ecx
jmp 0x4d1220
push 0x1013
jmp 0x4d0d9f
push 0x1004cb1c
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1500
push 1
call fcn.004da095
movzx eax, al
sub eax, 0
pop ecx
je 0x4d140e
dec eax
jne 0x4d20d6
push 0x1004c9e4
push 0x1004b0f2
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d2001
push dword [ebp + 8]
call fcn.004d99a2
pop ecx
mov dword [ebp - 0x80], 0x2c
mov dword [ebp - 0x7c], 3
jmp 0x4d11fe
push 2
call fcn.004da095
test al, al
pop ecx
je 0x4d1eaa
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
movzx eax, byte [eax + 0x10055bc0]
dec eax
je 0x4d2001
dec eax
je 0x4d2001
dec eax
je 0x4d14a6
dec eax
jne 0x4d20d6
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov al, byte [0x1004b1a8]
push 0
push dword [ebp - 8]
push dword [ebp + 0x10]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004edcb8
push eax
call fcn.004da20c
push eax
call fcn.004d9848
add esp, 0x20
jmp 0x4d0da5
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
push dword [ebp - 8]
mov al, byte [0x1004b1a8]
push dword [ebp + 0x10]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004eb9b8
push eax
call fcn.004da13f
push eax
call fcn.004d9848
add esp, 0x1c
jmp 0x4d0da5
push 0x1004cb48
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1662
push 1
call fcn.004da095
movzx eax, al
sub eax, 0
pop ecx
je 0x4d15ed
dec eax
jne 0x4d20d6
push 0x1004c9e4
push 0x1004b0f2
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d2001
push dword [ebp + 8]
call fcn.004d99a2
sub esp, 0x210
mov ebx, 0x1004bae8
mov ecx, 0x85
mov esi, ebx
mov edi, esp
mov dword [ebp + 8], eax
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x80], 0x2c
mov dword [ebp - 0x7c], 4
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d15ae
and dword [ebp - 0x78], 0
push 0x10
lea eax, [ebp - 0x74]
push ebx
push eax
call 0x503bf8
push 0x10
lea eax, [ebp - 0x64]
push 0x1004baf8
push eax
call 0x503bf8
add esp, 0x18
jmp 0x4d15db
cmp byte [0x1004bcf8], 1
mov dword [ebp - 0x78], 1
jne 0x4d15d7
push 0x10
lea eax, [ebp - 0x64]
push 0x1004baf8
push eax
mov byte [ebp - 0x74], 1
call 0x503bf8
add esp, 0xc
jmp 0x4d15db
and byte [ebp - 0x74], 0
push dword [ebp + 0x10]
lea eax, [ebp - 0x80]
push dword [ebp - 8]
push eax
push dword [ebp + 8]
jmp 0x4d1205
push 2
call fcn.004da095
test al, al
pop ecx
je 0x4d1eaa
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
movzx ecx, byte [eax + 0x10055bc0]
dec ecx
je 0x4d2001
dec ecx
je 0x4d2001
dec ecx
je 0x4d164c
dec ecx
jne 0x4d20d6
push 0
push ebx
push edi
push dword [eax + 0x10055c48]
call fcn.004ee028
push eax
call fcn.004da20c
push eax
call fcn.004d9848
add esp, 0x18
jmp 0x4d0da5
push ebx
push edi
push dword [eax + 0x10055c48]
call fcn.004ebcb8
push eax
call fcn.004da13f
push eax
jmp 0x4d16b1
push 0x1004caf4
push dword [ebp + 0xc]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d16be
sub esp, 0x214
mov ebx, 0x1004bf18
mov ecx, 0x85
mov esi, ebx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
push 0x1004bf28
push ebx
push dword [ebp + 0x10]
push dword [ebp - 8]
call fcn.004dc27c
push 0
call fcn.004d9848
add esp, 0x14
jmp 0x4d0da5
push 0x1004cc08
push dword [ebp + 8]
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d0d9a
test esi, esi
je 0x4d0d9a
cmp dword [ebp + 0x1c], eax
je 0x4d0d9a
mov esi, dword [ebp + 0x18]
mov edi, dword [ebp + 0xc]
push 0x1004cacc
push edi
mov ebx, dword [esi]
mov dword [ebp - 8], ebx
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1a1b
push 1
call fcn.004da095
movzx eax, al
sub eax, 0
pop ecx
je 0x4d1804
dec eax
jne 0x4d20d6
push 0x1004c9e4
push 0x1004b0f2
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d2001
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c130
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
push dword [ebp + 8]
call fcn.004d99a2
pop ecx
cmp dword [0x1004c334], 0
push 1
mov dword [ebp + 8], eax
pop eax
mov dword [ebp - 0x80], 0x2c
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov eax, dword [0x1004c33c]
mov dword [ebp - 0x74], eax
je 0x4d17d7
sub esp, 0x2c
mov esi, 0x1004b228
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov eax, dword [0x1004c334]
mov ecx, dword [0x1004b238]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], 0x1004b228
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0x1004c130
lea eax, [ebp - 0x20]
mov dword [ebp - 0x6c], eax
jmp 0x4d17db
and dword [ebp - 0x6c], 0
lea eax, [ebp - 4]
mov dword [ebp - 4], ebx
push eax
lea eax, [ebp - 0x80]
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push eax
push dword [ebp + 8]
call fcn.004f520e
mov edx, dword [ebp + 0x18]
mov ecx, dword [ebp - 4]
mov dword [edx], ecx
jmp 0x4d1e91
push 2
call fcn.004da095
test al, al
pop ecx
je 0x4d1eaa
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
movzx eax, byte [eax + 0x10055bc0]
dec eax
je 0x4d2001
dec eax
je 0x4d2001
dec eax
je 0x4d1935
dec eax
jne 0x4d20d6
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c130
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
cmp dword [0x1004c334], 0
je 0x4d1913
sub esp, 0x2c
mov esi, 0x1004b228
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov ax, word [0x1004c334]
push 0
push 0x1004c130
push eax
mov ax, word [0x1004c33c]
mov esi, 0x1004b228
push eax
sub esp, 0x2c
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
push eax
mov al, byte [0x1004b1a8]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004eda58
add esp, 0x20
test ax, ax
je 0x4d1913
push eax
call fcn.004da20c
jmp 0x4d1ff5
lea eax, [ebp - 4]
push 0
push eax
mov esi, dword [ebp - 8]
push dword [ebp + 0x1c]
mov dword [ebp - 4], esi
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push dword [0x1004c33c]
push 1
jmp 0x4d1f25
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c130
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
cmp dword [0x1004c334], 0
je 0x4d19fb
sub esp, 0x2c
mov esi, 0x1004b228
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov ax, word [0x1004c334]
push 0x1004c130
push eax
mov ax, word [0x1004c33c]
push eax
mov esi, 0x1004b228
sub esp, 0x2c
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
push eax
mov al, byte [0x1004b1a8]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004eb7b8
add esp, 0x1c
test ax, ax
jne 0x4d1fef
lea eax, [ebp - 4]
mov esi, dword [ebp - 8]
push eax
mov dword [ebp - 4], esi
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push dword [0x1004c33c]
push 1
jmp 0x4d1faf
push 0x1004cab8
push edi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1d0e
push 1
call fcn.004da095
movzx eax, al
sub eax, 0
pop ecx
je 0x4d1b02
dec eax
jne 0x4d20d6
push 0x1004c9e4
push 0x1004b0f2
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d2001
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c348
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
push dword [ebp + 8]
call fcn.004d99a2
pop ecx
cmp dword [0x1004c54c], 0
push 1
mov dword [ebp + 8], eax
pop eax
mov dword [ebp - 0x80], 0x2c
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov eax, dword [0x1004c554]
mov dword [ebp - 0x74], eax
je 0x4d17d7
sub esp, 0x2c
mov esi, 0x1004b228
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov eax, dword [0x1004c54c]
mov ecx, dword [0x1004b238]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], 0x1004b228
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0x1004c348
jmp 0x4d17cf
push 2
call fcn.004da095
test al, al
pop ecx
je 0x4d1eaa
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
movzx eax, byte [eax + 0x10055bc0]
dec eax
je 0x4d2001
dec eax
je 0x4d2001
dec eax
je 0x4d1c2a
dec eax
jne 0x4d20d6
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c348
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
cmp dword [0x1004c54c], 0
je 0x4d1c0a
sub esp, 0x2c
mov esi, 0x1004b228
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov ax, word [0x1004c54c]
push 0
push 0x1004c348
push eax
mov ax, word [0x1004c554]
mov esi, 0x1004b228
push eax
sub esp, 0x2c
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
push eax
mov al, byte [0x1004b1a8]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004eda58
add esp, 0x20
test ax, ax
jne 0x4d1908
lea eax, [ebp - 4]
push 0
push eax
mov esi, dword [ebp - 8]
push dword [ebp + 0x1c]
mov dword [ebp - 4], esi
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push dword [0x1004c554]
jmp 0x4d192e
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c348
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
cmp dword [0x1004c54c], 0
je 0x4d1cf0
sub esp, 0x2c
mov esi, 0x1004b228
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov ax, word [0x1004c54c]
push 0x1004c348
push eax
mov ax, word [0x1004c554]
push eax
mov esi, 0x1004b228
sub esp, 0x2c
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9e9b
add esp, 0x2c
push eax
mov al, byte [0x1004b1a8]
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004eb7b8
add esp, 0x1c
test ax, ax
jne 0x4d1fef
lea eax, [ebp - 4]
mov esi, dword [ebp - 8]
push eax
mov dword [ebp - 4], esi
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push dword [0x1004c554]
jmp 0x4d1a14
push 0x1004cbb0
push edi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d1e11
push 1
call fcn.004da095
movzx eax, al
sub eax, 0
pop ecx
je 0x4d1d73
dec eax
jne 0x4d20d6
push 0x1004c9e4
push 0x1004b0f2
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d2001
push dword [ebp + 8]
call fcn.004d99a2
and dword [ebp - 0x78], 0
pop ecx
mov dword [ebp - 0x80], 0x2c
mov dword [ebp - 0x7c], 2
jmp 0x4d1e72
push 2
call fcn.004da095
test al, al
pop ecx
je 0x4d1eaa
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
movzx eax, byte [eax + 0x10055bc0]
dec eax
je 0x4d2001
dec eax
je 0x4d2001
dec eax
je 0x4d1de0
dec eax
jne 0x4d20d6
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov esi, dword [ebp - 8]
mov dword [ebp - 4], esi
call fcn.004ee078
jmp 0x4d1f10
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov esi, dword [ebp - 8]
mov dword [ebp - 4], esi
call fcn.004ee078
jmp 0x4d1f9c
push 0x1004cb98
push edi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d200b
push 1
pop edi
push edi
call fcn.004da095
movzx eax, al
sub eax, 0
pop ecx
je 0x4d1e9e
dec eax
jne 0x4d20d6
push 0x1004c9e4
push 0x1004b0f2
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d2001
push dword [ebp + 8]
call fcn.004d99a2
pop ecx
mov dword [ebp - 0x80], 0x2c
mov dword [ebp - 0x7c], 2
mov dword [ebp - 0x78], edi
lea ecx, [ebp - 4]
mov dword [ebp - 4], ebx
push ecx
lea ecx, [ebp - 0x80]
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push ecx
push eax
call fcn.004f520e
mov ecx, dword [ebp - 4]
mov dword [esi], ecx
cmp ecx, ebx
ja 0x4d20cc
jmp 0x4d120a
push 2
call fcn.004da095
test al, al
pop ecx
jne 0x4d1eb4
push 0x1011
jmp 0x4d0d9f
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
movzx eax, byte [eax + 0x10055bc0]
dec eax
je 0x4d2001
dec eax
je 0x4d2001
dec eax
je 0x4d1f6a
dec eax
jne 0x4d20d6
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
je 0x4d1f87
mov esi, dword [ebp - 8]
mov dword [ebp - 4], esi
call fcn.004ee068
lea ecx, [ebp - 4]
push 0
push ecx
mov dword [ebp - 0x10], eax
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push eax
push 2
mov al, byte [0x1004b1a8]
push 0x1004b1b4
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004edec8
mov edx, dword [ebp + 0x18]
mov ecx, dword [ebp - 4]
add esp, 0x2c
test ax, ax
mov dword [edx], ecx
je 0x4d20c1
cmp ecx, esi
ja 0x4d20cc
jmp 0x4d1908
sub esp, 0x2c
mov ebx, 0x1004b198
mov esi, ebx
push 0xb
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9edb
add esp, 0x2c
test al, al
jne 0x4d1f91
push 0x1022
jmp 0x4d0d9f
mov esi, dword [ebp - 8]
mov dword [ebp - 4], esi
call fcn.004ee068
lea ecx, [ebp - 4]
mov dword [ebp - 0x10], eax
push ecx
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push eax
push 2
mov al, byte [0x1004b1a8]
push 0x1004b1b4
push eax
push ebx
movzx eax, word [0x1004b0f0]
imul eax, eax, 0x98
push dword [eax + 0x10055c48]
call fcn.004ebb98
mov edx, dword [ebp + 0x18]
mov ecx, dword [ebp - 4]
add esp, 0x28
test ax, ax
mov dword [edx], ecx
je 0x4d20c1
cmp ecx, esi
ja 0x4d20cc
push eax
call fcn.004da13f
push eax
call fcn.004d9848
pop ecx
jmp 0x4d0da4
push 0x1001
jmp 0x4d0d9f
push 0x1004caa0
push edi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d2056
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c560
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
je 0x4d208e
lea eax, [ebp - 4]
mov dword [ebp - 4], ebx
push eax
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push 0x1004c560
jmp 0x4d20ad
push 0x1004ca88
push edi
call 0x50c9a8
pop ecx
test eax, eax
pop ecx
jne 0x4d0d9a
sub esp, 0x214
mov ecx, 0x85
mov esi, 0x1004c778
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da061
add esp, 0x214
test al, al
jne 0x4d2098
push 0x1050
jmp 0x4d0d9f
lea eax, [ebp - 4]
mov dword [ebp - 4], ebx
push eax
push dword [ebp + 0x1c]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push 0x1004c778
call fcn.004dc534
mov edx, dword [ebp + 0x18]
mov ecx, dword [ebp - 4]
add esp, 0x14
test eax, eax
mov dword [edx], ecx
jne 0x4d20c8
push 0
jmp 0x4d0d9f
cmp ecx, ebx
jbe 0x4d20d6
push 0x1052
jmp 0x4d0d9f
push 0x1034
jmp 0x4d0d9f