Function at 0x41d4f9
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov eax, dword [ebp - 0x500]
add eax, 1
mov dword [ebp - 0x500], eax
push esi
push ebx
add esp, 4
jmp 0x41d3a2
pop esi
push eax
jmp 0x41d3aa
add eax, 0x1bfc
sub eax, 0x11c50
call fcn.0041d3c3
add byte [eax + edi], dh
dec edi
inc edx
dec eax
inc edx
add esp, 4
pop eax
mov ecx, dword [ebp - 0x500]
sub ecx, dword [ebp - 0x3f0]
cmp ecx, 0xffffffff
jb 0x41d40f
push esi
push edi
add esp, 4
call 0x41d3e9
add byte [edx + edi + 0x37], cl
inc ebp
dec esp
add esp, 4
sub esi, 0x13d4f
pop esi
push edi
push ebx
add esp, 4
jmp 0x41d3fd
or edi, 0xb8d5
and edi, 0x119c1
pop edi
jmp 0x41d63d
mov dword [ebp - 0xc88], 7
mov edx, dword [ebp - 0x500]
mov dword [ebp - 0xac0], edx
push edi
push edi
add esp, 4
jmp 0x41d432
xor edi, 0x159f2
sub edi, 0xc362
sub edi, 0x8268
pop edi
push ecx
push esi
add esp, 4
add ecx, 0x1284a
sub ecx, 0xd7f
pop ecx
mov eax, dword [ebp - 0x15d0]
mov dword [ebp - 0xabc], eax
mov dword [ebp - 0xc8c], 0
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0x15d0]
jne 0x41d4be
push esi
push ecx
add esp, 4
and esi, 0xffe2
or esi, 0x78cc
add esi, 0x869f
xor esi, 0x138cb
pop esi
push edx
add edx, 0x2da1
or edx, 0x68b4
xor edx, 0x11e5e
pop edx
mov edx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], edx
jmp 0x41d5ef
cmp dword [ebp - 0xc88], 0
jle 0x41d5e3
push edi
add edi, 0x94ae
pop edi
push edx
push edx
add esp, 4
or edx, 0x798
add edx, 0x11ca4
pop edx
push esi
jmp 0x41d4ec
call 0x41d4f9
add byte [eax + 0x46], cl
dec esp
inc eax
xor eax, dword [edx + 0x45]
add esp, 4
pop esi
mov eax, dword [ebp - 0xac0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xabc]
movzx eax, byte [edx]
cmp ecx, eax
je 0x41d57f
push edx
and edx, 0x11647
add edx, 0x96b3
pop edx
push eax
push esi
add esp, 4
jmp 0x41d52b
pop eax
push esi
push eax
add esp, 4
and esi, 0xab3a
sub esi, 0x280e
jmp 0x41d544
pop esi
mov ecx, dword [ebp - 0xac0]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0xabc]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x41d567
mov dword [ebp - 0x15a0], 1
jmp 0x41d571
mov dword [ebp - 0x15a0], 0xffffffff
mov edx, dword [ebp - 0x15a0]
mov dword [ebp - 0xc8c], edx
jmp 0x41d5e3
push ebx
call 0x41d58f
add byte [eax], bh
dec ebx
xor eax, 0x3346494a
inc ebx
inc eax
add esp, 4
pop ebx
push esi
push eax
add esp, 4
add esi, 0x29a5
add esi, 0x144ed
and esi, 0x14630
and esi, 0x6f94
pop esi
mov eax, dword [ebp - 0xc88]
sub eax, 1
mov dword [ebp - 0xc88], eax
mov ecx, dword [ebp - 0xac0]
add ecx, 1
mov dword [ebp - 0xac0], ecx
mov edx, dword [ebp - 0xabc]
add edx, 1
mov dword [ebp - 0xabc], edx
jmp 0x41d4be
mov eax, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], eax
cmp dword [ebp - 0x15d4], 0
jne 0x41d638
push ebx
or ebx, 0x5dad
sub ebx, 0x134df
add ebx, 0x151f0
pop ebx
push esi
push ebx
add esp, 4
and esi, 0xfe47
add esi, 0xbb3d
and esi, 0x5851
jmp 0x41d629
pop esi
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0xab8], ecx
jmp 0x41d679
jmp 0x41d386
push edx
or edx, 0x1112c
add edx, 0x7f53
pop edx
push edi
push ebx
add esp, 4
and edi, 0xda05
jmp 0x41d65f
pop edi
push edx
jmp 0x41d668
and edx, 0x62e3
pop edx
mov dword [ebp - 0xab8], 0
push eax
call 0x41d687
add byte [ebp + 0x4f], al
cmp dword [eax + 0x42], ecx
cmp byte [ecx - 0x7d], al
les eax, [ecx + eax*4]
sal ah, 0x81
add dword [eax], eax
jmp 0x41d697
pop eax
push eax
jmp 0x41d6a2
jmp 0x41d6aa
pop eax
mov byte [ebp - 0x878], 0x45
mov byte [ebp - 0x877], 0x78
mov byte [ebp - 0x876], 0x69
mov byte [ebp - 0x875], 0x74
mov byte [ebp - 0x874], 0x50
mov byte [ebp - 0x873], 0x72
mov byte [ebp - 0x872], 0x6f
mov byte [ebp - 0x871], 0x63
mov byte [ebp - 0x870], 0x65
mov byte [ebp - 0x86f], 0x73
mov byte [ebp - 0x86e], 0x73
mov byte [ebp - 0x86d], 0
push esi
push eax
add esp, 4
and esi, 0x5e7d
pop esi
push ecx
and ecx, 0xa80
or ecx, 0x79e9
and ecx, 0x9980
sub ecx, 0x17c8d
pop ecx
push eax
push eax
add esp, 4
xor eax, 0x13878
pop eax
mov edx, 0x6b
mov word [ebp - 0x1738], dx
mov eax, 0x65
mov word [ebp - 0x1736], ax
mov ecx, 0x72
mov word [ebp - 0x1734], cx
mov edx, 0x6e
mov word [ebp - 0x1732], dx
mov eax, 0x65
mov word [ebp - 0x1730], ax
mov ecx, 0x6c
mov word [ebp - 0x172e], cx
mov edx, 0x33
mov word [ebp - 0x172c], dx
mov eax, 0x32
mov word [ebp - 0x172a], ax
mov ecx, 0x2e
mov word [ebp - 0x1728], cx
mov edx, 0x64
mov word [ebp - 0x1726], dx
mov eax, 0x6c
mov word [ebp - 0x1724], ax
mov ecx, 0x6c
mov word [ebp - 0x1722], cx
xor edx, edx
mov word [ebp - 0x1720], dx
push ebx
push edx
add esp, 4
add ebx, 0xa81c
pop ebx
push edi
push edx
add esp, 4
call 0x41d7ea
add byte [esi + 0x4a], cl
dec ebx
dec esp
aas
dec ebp
inc edx
xor al, 0x36
add esp, 4
or edi, 0x8ef6
pop edi
push eax
sub eax, 0x198c
pop eax
push edx
push edi
add esp, 4
xor edx, 0x10357
sub edx, 0x48aa
or edx, 0xad42
xor edx, 0x9d6d
pop edx
push edi
add edi, 0x1e2
or edi, 0x899f
sub edi, 0x1915
pop edi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1954], eax
mov ecx, dword [ebp - 0x1954]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1958], edx
mov eax, dword [ebp - 0x1958]
mov dword [ebp - 0x15d8], eax
push esi
push edi
add esp, 4
and esi, 0x912e
pop esi
push ebx
push edx
add esp, 4
and ebx, 0x9917
sub ebx, 0x8b91
or ebx, 0x3691
pop ebx
push ecx
and ecx, 0x1599e
and ecx, 0x7bcd
pop ecx
cmp dword [ebp - 0x15d8], 0
jne 0x41d89f
mov dword [ebp - 0x31c], 0
jmp 0x41db5b
mov ecx, dword [ebp - 0x15d8]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc98], eax
push edx
push eax
add esp, 4
or edx, 0x8334
and edx, 0x133ef
xor edx, 0xc9c4
pop edx
push ebx
push edx
add esp, 4
jmp 0x41d8d4
pop ebx
push esi
and esi, 0x1562f
add esi, 0x14f97
pop esi
cmp dword [ebp - 0xc98], 0
jne 0x41d8fb
mov dword [ebp - 0x31c], 0
jmp 0x41db5b
mov ecx, dword [ebp - 0xc98]
mov dword [ebp - 0x504], ecx
push edi
push edx
add esp, 4
sub edi, 0x9d53
and edi, 0xc5bc
add edi, 0x1524b
and edi, 0xfd41
pop edi
push edi
jmp 0x41d92f
jmp 0x41d938
pop edi
lea edx, [ebp - 0x1738]
mov dword [ebp - 0xc94], edx
mov eax, dword [ebp - 0x504]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc90], ecx
xor edx, edx
mov word [ebp - 0x210], dx
xor eax, eax
mov word [ebp - 0x10c], ax
push edx
push edi
add esp, 4
xor edx, 0xa87
or edx, 0x91b4
add edx, 0x13995
xor edx, 0x14bf1
pop edx
push ebx
push eax
add esp, 4
or ebx, 0x10bf2
pop ebx
push esi
xor esi, 0x202a
pop esi
mov ecx, dword [ebp - 0xc90]
mov dx, word [ecx]
mov word [ebp - 0x1032], dx
mov eax, dword [ebp - 0xc90]
add eax, 2
mov dword [ebp - 0xc90], eax
mov cx, word [ebp - 0x1032]
mov word [ebp - 0x210], cx
mov edx, dword [ebp - 0xc94]
mov ax, word [edx]
mov word [ebp - 0x1034], ax
mov ecx, dword [ebp - 0xc94]
add ecx, 2
mov dword [ebp - 0xc94], ecx
mov dx, word [ebp - 0x1034]
mov word [ebp - 0x10c], dx
push eax
push ebx
add esp, 4
call 0x41da07
add byte [esi], dh
dec ecx
cmp bh, byte [eax]
dec ebx
dec ebp
cmp al, byte [ebp + 0x3b]
inc eax
add esp, 4
or eax, 0x12995
call 0x41da20
add byte [esp + eax*2 + 0x32], cl
dec edx
inc esp
push eax
cmp eax, dword [edi + 0x46]
cmp eax, dword [ebx + 0xf5804c4]
mov bh, 0x85
hlt
push edi
sub edi, 0x10be0
pop edi
push edx
push esi
add esp, 4
add edx, 0xf6c4
add edx, 0x850
or edx, 0x10ac5
xor edx, 0x14d2d
pop edx
push esi
push edx
add esp, 4
xor esi, 0xbb92
pop esi
cmp dword [ebp - 0x31c], 0
jne 0x41e4a7
mov eax, 0x6b
mov word [ebp - 0x1774], ax
mov dword [ebp - 0x1774], eax
mov ecx, 0x65
mov word [ebp - 0x1772], cx
mov edx, 0x72
mov word [ebp - 0x1770], dx
mov eax, 0x6e
add byte [eax], al
add byte [esi - 0x77], ah
test dword [edx - 0x46000018], edx
add byte gs:[eax], al
add byte [esi - 0x77], ah
lea edx, [eax + ebp*8 + 0x6cbaffff]
add byte [eax], al
add byte [esi - 0x77], ah
xchg ebp, eax
xchg esi, eax
call 0x33fadbe3
add byte [eax], al
add byte [esi - 0x77], ah
test dword [eax - 0x46000018], ebx
xor al, byte [eax]
add byte [eax], al
mov word [ebp - 0x1766], cx
mov edx, 0x2e
mov word [ebp - 0x1764], dx
mov eax, 0x64
mov word [ebp - 0x1762], ax
mov ecx, 0x6c
mov word [ebp - 0x1760], cx
mov edx, 0x6c
mov word [ebp - 0x175e], dx
xor eax, eax
mov word [ebp - 0x175c], ax
push ebx
call 0x41dc43
add byte [edi + 0x42], cl
dec ebp
inc edx
inc ecx
inc edi
dec edi
dec eax
add esp, 4
pop ebx
push edx
push eax
add esp, 4
call 0x41dc5b
add byte [eax], al
xor al, 0x46
xor eax, 0x41463b36
dec ecx
add esp, 4
and edx, 0x1374d
pop edx
mov byte [ebp - 0x894], 0x4c
mov byte [ebp - 0x893], 0x6f
mov byte [ebp - 0x892], 0x61
mov byte [ebp - 0x891], 0x64
mov byte [ebp - 0x890], 0x4c
mov byte [ebp - 0x88f], 0x69
mov byte [ebp - 0x88e], 0x62
mov byte [ebp - 0x88d], 0x72
mov byte [ebp - 0x88c], 0x61
mov byte [ebp - 0x88b], 0x72
mov byte [ebp - 0x88a], 0x79
mov byte [ebp - 0x889], 0x57
mov byte [ebp - 0x888], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x195c], ecx
mov edx, dword [ebp - 0x195c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1960], eax
mov ecx, dword [ebp - 0x1960]
mov dword [ebp - 0x15e4], ecx
push edi
push edx
add esp, 4
call 0x41dcfd
add byte [0x4850413c], bh
dec eax
dec ebp
inc ecx
inc ecx
xor eax, dword [ebx + 0x525f04c4]
pop edi
push edx
and edx, 0x113d3
pop edx
push edx
push eax
add esp, 4
or edx, 0x2007
jmp 0x41dd19
pop edx
cmp dword [ebp - 0x15e4], 0
jne 0x41dd32
mov dword [ebp - 0x750], 0
jmp 0x41dfee
mov edx, dword [ebp - 0x15e4]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xca4], ecx
push esi
push ebx
add esp, 4
call 0x41dd57
add byte [edi], bh
inc edx
cmp al, byte [esi + 0x38]
inc ecx
xor ecx, dword [ebx - 0x7d]
les eax, [ecx + eax*4]
invalid
push ecx
or ecx, 0x1797b
add ecx, 0x166df
or ecx, 0xc653
add ecx, 0xd6be
pop ecx
push esi
push eax
add esp, 4
or esi, 0x17e4c
or esi, 0xcc89
xor esi, 0x7a85
pop esi
cmp dword [ebp - 0x750], 0
jne 0x41e06a
push ecx
push ebx
add esp, 4
or ecx, 0x16136
add ecx, 0x2e9c
add ecx, 0xafb5
pop ecx
push ecx
add ecx, 0xe0de
call 0x41e057
add byte [edx + 0x3d], al
aas
cmp eax, 0x4c453743
dec edx
add esp, 4
pop ecx
mov dword [ebp - 0x79c], 0
jmp 0x41eb92
push edi
add edi, 0x5729
add edi, 0x24bf
xor edi, 0x7ca1
pop edi
push eax
push ebx
add esp, 4
sub eax, 0xa5be
jmp 0x41e08f
sub eax, 0x136ba
add eax, 0xbd65
pop eax
mov ecx, dword [ebp - 0x750]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x320], edx
mov dword [ebp - 0x760], 0
mov eax, dword [ebp - 0x320]
mov dword [ebp - 0x15f0], eax
cmp dword [ebp - 0x15f0], 0
jne 0x41e0db
mov ecx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], ecx
jmp 0x41e3cc
mov edx, dword [ebp - 0x15f0]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x15f4], eax
jne 0x41e103
mov ecx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], ecx
jmp 0x41e3cc
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x15f4]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x15f8], edx
cmp dword [ebp - 0x15f8], 0
jne 0x41e135
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], eax
jmp 0x41e3cc
mov ecx, dword [ebp - 0x320]
add ecx, dword [ebp - 0x15f8]
mov dword [ebp - 0x754], ecx
jne 0x41e15a
mov edx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], edx
jmp 0x41e3cc
mov eax, dword [ebp - 0x754]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1964], ecx
mov edx, dword [ebp - 0x754]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1968], eax
mov ecx, dword [ebp - 0x754]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x196c], edx
mov dword [ebp - 0x758], 0
jmp 0x41e1b4
mov eax, dword [ebp - 0x758]
add eax, 1
mov dword [ebp - 0x758], eax
mov ecx, dword [ebp - 0x754]
mov edx, dword [ebp - 0x758]
cmp edx, dword [ecx + 0x18]
jae 0x41e3c0
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x1964]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x1968]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x196c]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1970], ecx
mov dword [ebp - 0x198], 0
jmp 0x41e224
mov edx, dword [ebp - 0x198]
add edx, 1
mov dword [ebp - 0x198], edx
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
test ecx, ecx
je 0x41e2d6
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x894]
test eax, eax
je 0x41e2d6
push edi
push eax
add esp, 4
and edi, 0x16212
pop edi
push ebx
push esi
add esp, 4
xor ebx, 0xf1d1
and ebx, 0x9e83
xor ebx, 0x5967
pop ebx
push esi
or esi, 0xdd32
sub esi, 0x8da6
pop esi
mov ecx, dword [ebp - 0x75c]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x894]
cmp edx, ecx
je 0x41e2c8
mov edx, dword [ebp - 0x75c]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x894]
cmp eax, edx
jne 0x41e2cf
jmp 0x41e215
jmp 0x41e2d6
push ebx
push eax
add esp, 4
xor ebx, 0xc8ef
sub ebx, 0xb9b6
call 0x41e2f7
add byte [esi + 0x4048404f], bh
push eax
cmp eax, 0xc4833c35
add al, 0x5b
push edx
jmp 0x41e301
add edx, 0x1677d
pop edx
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x894]
cmp ecx, eax
jne 0x41e335
mov dword [ebp - 0xca8], 0
jmp 0x41e3a4
push esi
push edx
add esp, 4
sub esi, 0x18196
sub esi, 0x26b0
and esi, 0x377f
sub esi, 0x5b15
pop esi
push edx
xor edx, 0x8d0a
add edx, 0x678a
or edx, 0x3b5c
pop edx
mov ecx, dword [ebp - 0x75c]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x894]
or ecx, 0x20
cmp edx, ecx
jge 0x41e39a
mov dword [ebp - 0xca8], 0xffffffff
jmp 0x41e3a4
mov dword [ebp - 0xca8], 1
cmp dword [ebp - 0xca8], 0
jne 0x41e3bb
mov edx, dword [ebp - 0x1970]
mov dword [ebp - 0x3f4], edx
jmp 0x41e3cc
jmp 0x41e1a5
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], eax
cmp dword [ebp - 0x3f4], 0
je 0x41e4a7
push esi
jmp 0x41e3e2
xor esi, 0x4bbb
sub esi, 0xd85c
sub esi, 0x15432
pop esi
push esi
add esi, 0x16009
and esi, 0xb115
pop esi
push eax
sub eax, 0x10782
pop eax
mov ecx, dword [ebp - 0x3f4]
mov dword [ebp - 0x1974], ecx
push ecx
xor ecx, 0x9698
xor ecx, 0x14bd4
pop ecx
push ecx
jmp 0x41e42b
call 0x41e439
add byte [edi + 0x50], al
xor eax, dword [ebp + 0x43]
dec edi
cmp byte [eax - 0x7d], cl
les eax, [ecx + eax*4]
rol dword [ebp + eax*4 - 0xe7f0000], 0xc1
imul eax, dword [ecx], 0
pop ecx
mov edx, dword [ebp - 0x1974]
mov dword [ebp - 0x1978], edx
lea eax, [ebp - 0x1738]
push eax
call dword [ebp - 0x1978]
test eax, eax
jne 0x41e4a7
push ebx
push ecx
add esp, 4
or ebx, 0xfa94
pop ebx
push edi
push edi
add esp, 4
xor edi, 0x2cf3
pop edi
push edi
jmp 0x41e486
call 0x41e494
add byte [esi + esi], bh
dec esp
cmp byte [eax], bh
dec esp
inc ecx
add esp, 4
pop edi
mov dword [ebp - 0x79c], 0
jmp 0x41eb92
push esi
xor esi, 0x6ece
add esi, 0x157ea
add esi, 0xd682
pop esi
push edi
or edi, 0xbd71
or edi, 0xafe0
call 0x41e4d5
add byte [ebx], bh
aas
push eax
aas
aas
cmp edx, dword [eax - 0x7d]
les eax, [edi + ebx*2]
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x197c], ecx
mov edx, dword [ebp - 0x197c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1980], eax
mov ecx, dword [ebp - 0x1980]
mov dword [ebp - 0x15fc], ecx
push ecx
push edi
add esp, 4
xor ecx, 0x56a5
pop ecx
push ebx
push esi
add esp, 4
add ebx, 0x2869
pop ebx
push ecx
add ecx, 0x15f7e
add ecx, 0x2539
and ecx, 0x14b32
xor ecx, 0x17600
pop ecx
cmp dword [ebp - 0x15fc], 0
jne 0x41e54b
mov dword [ebp - 0x31c], 0
jmp 0x41e7f2
mov edx, dword [ebp - 0x15fc]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcb4], ecx
push esi
sub esi, 0x478b
jmp 0x41e56b
and esi, 0xc44c
jmp 0x41e576
pop esi
push eax
push edx
add esp, 4
xor eax, 0x5e28
or eax, 0xfcb3
add eax, 0xe194
pop eax
cmp dword [ebp - 0xcb4], 0
jne 0x41e5a7
mov dword [ebp - 0x31c], 0
jmp 0x41e7f2
mov edx, dword [ebp - 0xcb4]
mov dword [ebp - 0x50c], edx
push esi
push edx
add esp, 4
or esi, 0xfe7d
and esi, 0x505a
call 0x41e5d4
add byte [eax + 0x4b], dl
dec ecx
inc esi
xor cl, byte [ebp + 0x42]
inc edi
inc ebp
cmp al, byte [ebx + 0x565e04c4]
sub esi, 0xcc01
jmp 0x41e5e4
pop esi
lea eax, [ebp - 0x1738]
mov dword [ebp - 0xcb0], eax
mov ecx, dword [ebp - 0x50c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcac], edx
xor eax, eax
mov word [ebp - 0x218], ax
xor ecx, ecx
mov word [ebp - 0x34], cx
push ebx
push eax
add esp, 4
sub ebx, 0x1477b
jmp 0x41e622
pop ebx
push ebx
and ebx, 0x7807
and ebx, 0x15ec
jmp 0x41e638
jmp 0x41e640
pop ebx
mov edx, dword [ebp - 0xcac]
mov ax, word [edx]
mov word [ebp - 0x103a], ax
mov ecx, dword [ebp - 0xcac]
add ecx, 2
mov dword [ebp - 0xcac], ecx
mov dx, word [ebp - 0x103a]
mov word [ebp - 0x218], dx
mov eax, dword [ebp - 0xcb0]
mov cx, word [eax]
mov word [ebp - 0x103c], cx
mov edx, dword [ebp - 0xcb0]
add edx, 2
mov dword [ebp - 0xcb0], edx
mov ax, word [ebp - 0x103c]
mov word [ebp - 0x34], ax
push eax
call 0x41e6a5
add byte [ecx + 0x3e], al
dec ebx
xor esi, dword [eax + eax*2]
add esp, 4
pop eax
push edi
and edi, 0x7527
pop edi
push edx
add edx, 0x4ba9
sub edx, 0x13563
jmp 0x41e6c3
add edx, 0x3d36
pop edx
movzx ecx, word [ebp - 0x34]
test ecx, ecx
jne 0x41e6e7
movzx edx, word [ebp - 0x218]
movzx eax, word [ebp - 0x34]
sub edx, eax
mov dword [ebp - 0x1604], edx
jmp 0x41e741
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
je 0x41e60f
movzx eax, word [ebp - 0x218]
xor eax, 0x20
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x41e60f
movzx edx, word [ebp - 0x218]
movzx eax, word [ebp - 0x34]
cmp edx, eax
jge 0x41e72b
mov dword [ebp - 0x1600], 0xffffffff
jmp 0x41e735
mov dword [ebp - 0x1600], 1
mov ecx, dword [ebp - 0x1600]
mov dword [ebp - 0x1604], ecx
cmp dword [ebp - 0x1604], 0
jne 0x41e78a
push edi
xor edi, 0x10ca4
call 0x41e760
add byte [eax + 0x48], cl
push eax
inc edi
dec edi
inc ebp
push eax
xor ecx, dword [ecx - 0x7d]
les eax, [ecx + eax*4]
out 0xb2, eax
push ebx
add byte [eax], al
or edi, 0x3c76
pop edi
push esi
push esi
add esp, 4
and esi, 0x11895
pop esi
mov edx, dword [ebp - 0x50c]
mov dword [ebp - 0x31c], edx
jmp 0x41e7f2
push esi
call 0x41e79b
add byte [ebp + 0x45], cl
inc esi
xor al, byte [esp + esi + 0x4a]
dec esi
dec esp
inc eax
add esp, 4
sub esi, 0x7ae
or esi, 0x3fe
call 0x41e7b8
add byte [edi + 0x46], cl
xor eax, 0x3f4c3844
push eax
add esp, 4
pop esi
mov eax, dword [ebp - 0x50c]
mov ecx, dword [eax]
mov dword [ebp - 0x50c], ecx
mov edx, dword [ebp - 0x50c]
cmp edx, dword [ebp - 0xcb4]
je 0x41e7e8
mov eax, dword [ebp - 0x50c]
cmp dword [eax + 0x30], 0
jne 0x41e5b3
mov dword [ebp - 0x31c], 0
push esi
push edi
add esp, 4
jmp 0x41e7fe
pop esi
push esi
push edi
add esp, 4
or esi, 0x4015
or esi, 0x13bf
pop esi
push edx
or edx, 0x4eb2
pop edx
push esi
jmp 0x41e823
pop esi
mov ecx, dword [ebp - 0x31c]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x324], edx
push edx
sub edx, 0x135bd
xor edx, 0xcdb0
pop edx
push esi
add esi, 0x12c09
jmp 0x41e84e
and esi, 0xb063
pop esi
push esi
jmp 0x41e85f
jmp 0x41e864
pop esi
mov dword [ebp - 0x770], 0
mov eax, dword [ebp - 0x324]
mov dword [ebp - 0x1608], eax
cmp dword [ebp - 0x1608], 0
jne 0x41e895
mov ecx, dword [ebp - 0x770]
mov dword [ebp - 0x510], ecx
jmp 0x41eb86
mov edx, dword [ebp - 0x1608]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x160c], eax
jne 0x41e8bd
mov ecx, dword [ebp - 0x770]
mov dword [ebp - 0x510], ecx
jmp 0x41eb86
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x160c]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1610], edx
cmp dword [ebp - 0x1610], 0
jne 0x41e8ef
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x41eb86
mov ecx, dword [ebp - 0x324]
add ecx, dword [ebp - 0x1610]
mov dword [ebp - 0x764], ecx
jne 0x41e914
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
jmp 0x41eb86
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1984], ecx
mov edx, dword [ebp - 0x764]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1d0c], eax
mov ecx, dword [ebp - 0x764]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1988], edx
mov dword [ebp - 0x768], 0
jmp 0x41e96e
mov eax, dword [ebp - 0x768]
add eax, 1
mov dword [ebp - 0x768], eax
mov ecx, dword [ebp - 0x764]
mov edx, dword [ebp - 0x768]
cmp edx, dword [ecx + 0x18]
jae 0x41eb7a
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x1984]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x76c], edx
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x1d0c]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1988]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x198c], ecx
mov dword [ebp - 0x19c], 0
jmp 0x41e9de
mov edx, dword [ebp - 0x19c]
add edx, 1
mov dword [ebp - 0x19c], edx
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x41ea90
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x878]
test eax, eax
je 0x41ea90
push esi
push edi
add esp, 4
add esi, 0xad15
xor esi, 0xf61e
pop esi
push ecx
push edx
add esp, 4
xor ecx, 0x27dd
add ecx, 0x2f2e
pop ecx
push eax
add eax, 0x1297c
xor eax, 0xa490
pop eax
mov ecx, dword [ebp - 0x76c]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x878]
cmp edx, ecx
je 0x41ea82
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
cmp eax, edx
jne 0x41ea89
jmp 0x41e9cf
jmp 0x41ea90
push edi
jmp 0x41ea97
and edi, 0xbc40
or edi, 0x853b
pop edi
push edx
push esi
add esp, 4
or edx, 0x159ef
add edx, 0x26f1
add edx, 0x146c8
sub edx, 0x16371
pop edx
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
invalid
invalid