Function at 0x200092c0
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0x924
mov eax, dword [0x20026464]
xor eax, esp
mov dword [esp + 0x920], eax
mov ecx, dword [0x2002b328]
mov eax, dword [esp + 0x92c]
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x204], eax
cmp ecx, dword [0x20026208]
jne 0x2000a3c6
cmp dword [0x200298e8], 0xffffffff
je 0x2000a3c6
mov ecx, 6
mov esi, str.00a4040c07a0000002471001
lea edi, [esp + 0x548]
rep movsd dword es:[edi], dword [esi]
push 0x3cf
xor ebx, ebx
lea edx, [esp + 0x565]
push ebx
push edx
movsb byte es:[edi], byte [esi]
call fcn.200132c0
lea eax, [esp + 0x554]
add esp, 0xc
mov dword [esp + 0x20c], ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x20009342
sub eax, edx
shr eax, 1
mov edi, eax
push edi
call fcn.200137a6
mov esi, eax
lea eax, [esp + 0x54c]
add esp, 4
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x20009364
sub eax, ebp
push eax
lea eax, [esp + 0x54c]
push esi
push eax
call fcn.200028c0
push 0x100
lea ecx, [esp + 0x458]
push ebx
push ecx
mov dword [esp + 0x224], 0x100
call fcn.200132c0
mov ecx, dword [0x200298e8]
add esp, 0x18
lea edx, [esp + 0x448]
push edx
lea eax, [esp + 0x210]
push eax
push esi
push edi
push ecx
call fcn.20002870
push esi
call fcn.200136c9
mov eax, dword [esp + 0x44c]
add esp, 4
cmp al, 0x90
jne 0x2000a3c6
cmp ah, bl
jne 0x2000a3c6
mov edx, dword [str.00b09E0006]
mov eax, dword [0x200205a8]
mov cx, word [0x200205ac]
mov dword [esp + 0x548], edx
mov dl, byte [0x200205ae]
mov dword [esp + 0x54c], eax
lea eax, [esp + 0x548]
mov byte [esp + 0x552], dl
mov word [esp + 0x550], cx
mov dword [esp + 0x20c], ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x20009421
sub eax, edx
shr eax, 1
mov edi, eax
push edi
call fcn.200137a6
mov esi, eax
lea eax, [esp + 0x54c]
add esp, 4
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x20009443
sub eax, ebp
push eax
lea eax, [esp + 0x54c]
push esi
push eax
call fcn.200028c0
push 0x100
lea ecx, [esp + 0x458]
push ebx
push ecx
mov dword [esp + 0x224], 0x100
call fcn.200132c0
mov ecx, dword [0x200298e8]
add esp, 0x18
lea edx, [esp + 0x448]
push edx
lea eax, [esp + 0x210]
push eax
push esi
push edi
push ecx
call fcn.20002870
push esi
call fcn.200136c9
mov esi, dword [esp + 0x208]
push esi
call fcn.20008d30
add esp, 8
mov byte [esp + 0x2ec], bl
mov dword [esp + 0x2ed], ebx
mov dword [esp + 0x2f1], ebx
mov dword [esp + 0x2f5], ebx
mov dword [esp + 0x2f9], ebx
mov dword [esp + 0x2fd], ebx
mov dword [esp + 0x301], ebx
cmp eax, 1
jne 0x2000a3c8
push 0xa
lea edx, [esp + 0x2f0]
push esi
push edx
call fcn.20013190
push 7
lea eax, [esi + 0xd]
push eax
lea ecx, [esp + 0x300]
push ecx
call fcn.20013c40
push 7
add esi, 0x15
lea edx, [esp + 0x308]
push esi
push edx
call fcn.20013c40
lea eax, [esp + 0x310]
add esp, 0x24
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x20009530
sub eax, esi
mov esi, eax
lea eax, [esp + 0x1a8]
push eax
call fcn.20011960
push esi
lea ecx, [esp + 0x2f4]
push ecx
lea edx, [esp + 0x1b4]
push edx
call fcn.20012c20
lea eax, [esp + 0x1b8]
push eax
call fcn.20012cf0
mov eax, dword [esp + 0x1d4]
mov ecx, dword [esp + 0x1d8]
mov edx, dword [esp + 0x1dc]
mov ebp, dword [esp + 0x1e0]
mov dword [esp + 0x229], ebx
mov dword [esp + 0x22d], ebx
mov dword [esp + 0x231], ebx
mov esi, eax
mov dword [esp + 0x228], eax
mov edi, ecx
mov dword [esp + 0x290], edx
mov dword [esp + 0x22c], ecx
mov dword [esp + 0x230], edx
lea eax, [esp + 0x1bc]
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], bl
mov byte [esp + 0x26], bl
mov byte [esp + 0x27], 1
mov edx, dword [esp + 0x24]
mov dword [esp + 0x235], ebx
mov ecx, ebp
mov word [esp + 0x239], bx
mov byte [esp + 0x23b], bl
push eax
mov byte [esp + 0x21c], bl
mov byte [esp + 0x21d], bl
mov byte [esp + 0x21e], bl
mov byte [esp + 0x21f], 2
mov byte [esp + 0x29c], bl
mov dword [esp + 0x29d], ebx
mov dword [esp + 0x2a1], ebx
mov dword [esp + 0x2a5], ebx
mov word [esp + 0x2a9], bx
mov byte [esp + 0x2ab], bl
mov dword [esp + 0x238], ecx
mov dword [esp + 0x23c], edx
call fcn.20011960
push 0x14
lea ecx, [esp + 0x230]
push ecx
lea edx, [esp + 0x1c8]
push edx
call fcn.20012c20
lea eax, [esp + 0x1cc]
push eax
call fcn.20012cf0
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1ec]
mov eax, dword [esp + 0x1f0]
mov dword [esp + 0x2ac], ecx
mov ecx, dword [esp + 0x1f4]
mov dword [esp + 0x2b0], edx
mov edx, dword [esp + 0x2a4]
mov dword [esp + 0x2b4], eax
mov eax, dword [esp + 0x22c]
mov dword [esp + 0x2b8], ecx
mov dword [esp + 0x23c], ebx
mov dword [esp + 0x240], ebx
mov dword [esp + 0x244], ebx
mov dword [esp + 0x248], ebx
mov dword [esp + 0x24c], ebx
mov dword [esp + 0x23c], esi
mov dword [esp + 0x240], edi
mov dword [esp + 0x244], edx
mov dword [esp + 0x248], ebp
mov dword [esp + 0x24c], eax
lea ecx, [esp + 0x1d0]
push ecx
call fcn.20011960
push 0x14
lea edx, [esp + 0x244]
push edx
lea eax, [esp + 0x1dc]
push eax
call fcn.20012c20
lea ecx, [esp + 0x1e0]
push ecx
call fcn.20012cf0
mov ecx, dword [esp + 0x204]
mov edx, dword [esp + 0x1fc]
mov eax, dword [esp + 0x200]
mov dword [esp + 0x2b8], ecx
mov ecx, dword [0x2002059c]
mov dword [esp + 0x2b0], edx
mov edx, dword [esp + 0x208]
mov dword [esp + 0x2b4], eax
mov eax, dword [str.0084000008]
push 0x100
mov dword [esp + 0x58c], ecx
mov dword [esp + 0x2c0], edx
mov dx, word [0x200205a0]
mov dword [esp + 0x588], eax
mov al, byte [0x200205a2]
lea ecx, [esp + 0x488]
push ebx
push ecx
mov word [esp + 0x598], dx
mov byte [esp + 0x59a], al
mov dword [esp + 0x254], ebx
call fcn.200132c0
lea eax, [esp + 0x590]
add esp, 0x48
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x200097c0
sub eax, esi
shr eax, 1
mov edi, eax
push edi
call fcn.200137a6
mov esi, eax
lea eax, [esp + 0x54c]
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x200097e2
sub eax, edx
push eax
lea edx, [esp + 0x54c]
push esi
push edx
call fcn.200028c0
push 0x100
lea eax, [esp + 0x458]
push ebx
push eax
mov dword [esp + 0x224], 0x100
call fcn.200132c0
mov eax, dword [0x200298e8]
add esp, 0x18
lea ecx, [esp + 0x448]
push ecx
lea edx, [esp + 0x210]
push edx
push esi
push edi
push eax
call fcn.20002870
push esi
call fcn.200136c9
add esp, 4
cmp byte [esp + 0x450], 0x90
jne 0x2000a3ff
cmp byte [esp + 0x451], bl
jne 0x2000a3ff
mov edi, dword [esp + 0x44c]
mov ebp, dword [esp + 0x448]
push ebx
mov dword [esp + 0x270], edi
mov byte [esp + 0x23c], bl
mov dword [esp + 0x23d], ebx
mov word [esp + 0x241], bx
mov byte [esp + 0x243], bl
mov byte [esp + 0x25c], bl
mov dword [esp + 0x25d], ebx
mov dword [esp + 0x261], ebx
mov dword [esp + 0x265], ebx
mov word [esp + 0x269], bx
mov byte [esp + 0x26b], bl
call fcn.20012f3d
push eax
call fcn.20013c0b
add esp, 8
xor esi, esi
lea ebx, [ebx]
call fcn.20013c1d
cdq
mov ecx, 0xff
idiv ecx
inc esi
mov eax, edx
cdq
xor eax, edx
sub eax, edx
inc al
mov byte [esp + esi + 0x237], al
cmp esi, 8
jb 0x200098d0
push ebx
call fcn.20012f3d
push eax
call fcn.20013c0b
add esp, 8
xor esi, esi
call fcn.20013c1d
cdq
mov ecx, 0xff
idiv ecx
inc esi
mov eax, edx
cdq
xor eax, edx
sub eax, edx
inc al
mov byte [esp + esi + 0x257], al
cmp esi, 0x10
jb 0x20009904
mov edx, dword [esp + 0x238]
mov eax, dword [esp + 0x23c]
mov ecx, dword [esp + 0x258]
mov dword [esp + 0x2cd], ebx
mov dword [esp + 0x2cc], edx
mov edx, dword [esp + 0x25c]
mov dword [esp + 0x2d1], ebx
mov dword [esp + 0x2dd], ebx
mov dword [esp + 0x2e1], ebx
mov dword [esp + 0x2d0], eax
mov eax, dword [esp + 0x260]
mov dword [esp + 0x2d9], ebx
mov dword [esp + 0x2e5], ebx
mov dword [esp + 0x2dc], ecx
mov ecx, dword [esp + 0x264]
mov dword [esp + 0x2e0], edx
push 1
lea edx, [esp + 0x254]
mov dword [esp + 0x2e8], eax
push edx
mov word [esp + 0x2f1], bx
mov byte [esp + 0x2f3], bl
lea eax, [esp + 0x28c]
mov dword [esp + 0x2f0], ecx
push eax
lea ecx, [esp + 0x20]
mov dword [esp + 0x2e1], ebx
push ecx
mov dword [esp + 0x2e4], ebp
mov dword [esp + 0x2e8], edi
mov byte [esp + 0x338], bl
mov dword [esp + 0x339], ebx
mov dword [esp + 0x33d], ebx
mov dword [esp + 0x341], ebx
mov dword [esp + 0x345], ebx
mov dword [esp + 0x349], ebx
mov dword [esp + 0x34d], ebx
mov dword [esp + 0x351], ebx
mov word [esp + 0x355], bx
mov byte [esp + 0x357], bl
mov byte [esp + 0x260], bl
mov byte [esp + 0x261], bl
mov byte [esp + 0x262], bl
mov byte [esp + 0x263], bl
mov byte [esp + 0x264], bl
mov byte [esp + 0x265], bl
mov byte [esp + 0x266], bl
mov byte [esp + 0x267], bl
call fcn.200022d0
push 0x20
lea edx, [esp + 0x2e0]
push edx
lea eax, [esp + 0x340]
push eax
lea ecx, [esp + 0x30]
push ecx
call fcn.20001d30
lea edx, [esp + 0x34]
push edx
call fcn.20001040
push ebx
lea eax, [esp + 0x278]
push eax
lea ecx, [esp + 0x2b0]
push ecx
lea edx, [esp + 0x44]
push edx
mov dword [esp + 0x394], ebx
mov dword [esp + 0x398], ebx
mov dword [esp + 0x39c], ebx
mov dword [esp + 0x3a0], ebx
mov dword [esp + 0x3a4], ebx
mov dword [esp + 0x3a8], ebx
mov dword [esp + 0x3ac], ebx
mov dword [esp + 0x3b0], ebx
call fcn.200022d0
push 0x20
lea eax, [esp + 0x360]
push eax
lea ecx, [esp + 0x39c]
push ecx
lea edx, [esp + 0x54]
push edx
call fcn.20001d30
lea eax, [esp + 0x58]
add esp, 0x44
push eax
call fcn.20001040
push 0x27
lea ecx, [esp + 0x3e1]
push ebx
push ecx
mov byte [esp + 0x3e8], bl
call fcn.200132c0
lea edx, [esp + 0x3e8]
push edx
lea eax, [esp + 0x33c]
push 0x20
push eax
mov byte [esp + 0x25c], bl
mov dword [esp + 0x25d], ebx
mov word [esp + 0x261], bx
mov byte [esp + 0x263], bl
call fcn.20008ed0
lea ecx, [esp + 0x25c]
push ecx
push 0x28
lea edx, [esp + 0x3fc]
push edx
lea eax, [esp + 0x29c]
push eax
call fcn.20008fa0
push 0x27
lea ecx, [esp + 0x3b1]
push ebx
push ecx
call fcn.200132c0
mov edx, dword [esp + 0x278]
mov eax, dword [esp + 0x27c]
mov ecx, 8
lea esi, [esp + 0x360]
lea edi, [esp + 0x3b8]
rep movsd dword es:[edi], dword [esi]
push 0x2d
lea ecx, [esp + 0x3e5]
push ebx
push ecx
mov dword [esp + 0x3e4], edx
mov dword [esp + 0x3e8], eax
mov byte [esp + 0x250], bl
mov byte [esp + 0x251], 0x82
mov byte [esp + 0x252], bl
mov byte [esp + 0x253], bl
call fcn.200132c0
mov edx, dword [esp + 0x250]
mov al, 0x28
add esp, 0x44
mov byte [esp + 0x3ac], al
mov dword [esp + 0x3a8], edx
mov ecx, 0xa
lea esi, [esp + 0x380]
lea edi, [esp + 0x3ad]
rep movsd dword es:[edi], dword [esi]
push 0x100
mov byte [esp + 0x3d9], al
lea eax, [esp + 0x44c]
push ebx
push eax
call fcn.200132c0
add esp, 0xc
lea ecx, [esp + 0x448]
push ecx
mov ecx, dword [0x200298e8]
lea edx, [esp + 0x210]
push edx
lea eax, [esp + 0x3b0]
push eax
push 0x2e
push ecx
mov dword [esp + 0x220], 0x100
call fcn.20002870
cmp byte [esp + 0x470], 0x90
jne 0x2000a3f8
cmp byte [esp + 0x471], bl
jne 0x2000a3f8
push 0x27
mov ecx, 0xa
lea esi, [esp + 0x44c]
lea edi, [esp + 0x384]
rep movsd dword es:[edi], dword [esi]
lea edx, [esp + 0x405]
push ebx
mov ecx, 8
lea esi, [esp + 0x450]
lea edi, [esp + 0x430]
push edx
rep movsd dword es:[edi], dword [esi]
mov byte [esp + 0x40c], bl
call fcn.200132c0
lea eax, [esp + 0x40c]
push eax
lea ecx, [esp + 0x438]
push 0x20
push ecx
mov byte [esp + 0x240], bl
mov dword [esp + 0x241], ebx
mov word [esp + 0x245], bx
mov byte [esp + 0x247], bl
call fcn.20008ed0
lea edx, [esp + 0x240]
push edx
push 0x28
lea eax, [esp + 0x420]
push eax
lea ecx, [esp + 0x298]
push ecx
call fcn.20008fa0
add esp, 0x28
xor eax, eax
nop
mov dl, byte [esp + eax + 0x228]
cmp dl, byte [esp + eax + 0x3a0]
jne 0x2000a3e3
inc eax
cmp eax, 8
jb 0x20009d10
lea eax, [esp + 0x14]
push eax
mov byte [esp + 0x30c], bl
mov dword [esp + 0x30d], ebx
mov dword [esp + 0x311], ebx
mov dword [esp + 0x315], ebx
mov dword [esp + 0x319], ebx
mov dword [esp + 0x31d], ebx
mov dword [esp + 0x321], ebx
mov dword [esp + 0x325], ebx
mov word [esp + 0x329], bx
mov byte [esp + 0x32b], bl
mov byte [esp + 0x22c], bl
mov dword [esp + 0x22d], ebx
mov dword [esp + 0x231], ebx
mov dword [esp + 0x235], ebx
mov word [esp + 0x239], bx
mov byte [esp + 0x23b], bl
mov dword [esp + 0x254], ebx
mov dword [esp + 0x258], ebx
call fcn.20001040
push ebx
lea ecx, [esp + 0x258]
push ecx
lea edx, [esp + 0x290]
push edx
lea eax, [esp + 0x24]
push eax
call fcn.200022d0
push 0x20
lea ecx, [esp + 0x440]
push ecx
lea edx, [esp + 0x324]
push edx
lea eax, [esp + 0x34]
push eax
call fcn.20001d30
lea ecx, [esp + 0x38]
push ecx
call fcn.20001040
mov edx, dword [esp + 0x340]
mov eax, dword [esp + 0x344]
mov ecx, dword [esp + 0x348]
mov dword [esp + 0x268], edx
mov edx, dword [esp + 0x34c]
add esp, 0x28
mov dword [esp + 0x244], eax
mov dword [esp + 0x248], ecx
mov dword [esp + 0x24c], edx
xor eax, eax
jmp 0x20009e40
movzx ecx, byte [esp + eax + 0x240]
movzx edx, byte [esp + eax + 0x241]
xor cl, byte [esp + eax + 0x258]
xor dl, byte [esp + eax + 0x259]
mov byte [esp + eax + 0x228], cl
movzx ecx, byte [esp + eax + 0x242]
xor cl, byte [esp + eax + 0x25a]
mov byte [esp + eax + 0x229], dl
movzx edx, byte [esp + eax + 0x243]
xor dl, byte [esp + eax + 0x25b]
mov byte [esp + eax + 0x22a], cl
mov byte [esp + eax + 0x22b], dl
add eax, 4
cmp eax, 0x10
jb 0x20009e40
mov eax, dword [esp + 0x234]
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x228]
mov edi, dword [esp + 0x22c]
mov ebp, dword [esp + 0x230]
lea edx, [esp + 0x1a8]
mov dword [esp + 0x214], ebx
mov dword [esp + 0x218], ebx
mov dword [esp + 0x21c], ebx
mov dword [esp + 0x220], ebx
mov dword [esp + 0x224], ebx
push edx
mov dword [esp + 0x218], esi
mov dword [esp + 0x21c], edi
mov dword [esp + 0x220], ebp
mov dword [esp + 0x224], eax
mov dword [esp + 0x228], ecx
call fcn.20011960
push 0x14
lea eax, [esp + 0x21c]
push eax
lea ecx, [esp + 0x1b4]
push ecx
call fcn.20012c20
lea edx, [esp + 0x1b8]
push edx
call fcn.20012cf0
mov eax, dword [esp + 0x248]
mov ecx, dword [esp + 0x218]
lea edx, [esp + 0x1bc]
mov dword [esp + 0x228], ebx
mov dword [esp + 0x22c], ebx
mov dword [esp + 0x230], ebx
mov dword [esp + 0x234], ebx
mov dword [esp + 0x238], ebx
push edx
mov dword [esp + 0x22c], esi
mov dword [esp + 0x230], edi
mov dword [esp + 0x234], ebp
mov dword [esp + 0x238], eax
mov dword [esp + 0x23c], ecx
call fcn.20011960
push 0x14
lea eax, [esp + 0x230]
push eax
lea ecx, [esp + 0x1c8]
push ecx
call fcn.20012c20
lea edx, [esp + 0x1cc]
push edx
call fcn.20012cf0
mov eax, dword [esp + 0x1e8]
mov ecx, dword [esp + 0x1ec]
mov edx, dword [esp + 0x1f0]
mov dword [esp + 0x29c], eax
mov eax, dword [esp + 0x1f4]
mov dword [esp + 0x2a0], ecx
mov ecx, dword [esp + 0x294]
mov dword [esp + 0x2a4], edx
mov edx, dword [esp + 0x264]
mov dword [esp + 0x269], ebx
mov word [esp + 0x26d], bx
mov byte [esp + 0x26f], bl
mov dword [esp + 0x2a8], eax
mov dword [esp + 0x268], ecx
mov dword [esp + 0x26c], edx
mov byte [esp + 0x22c], 0xc
mov byte [esp + 0x22d], 0xb0
mov byte [esp + 0x22e], 0x9e
mov byte [esp + 0x22f], bl
mov byte [esp + 0x230], 6
mov byte [esp + 0x260], bl
mov dword [esp + 0x261], ebx
mov word [esp + 0x265], bx
mov byte [esp + 0x267], bl
mov dword [esp + 0x281], ebx
mov dword [esp + 0x285], ebx
mov word [esp + 0x289], bx
mov dword [esp + 0x2e1], ebx
mov dword [esp + 0x2e5], ebx
mov dword [esp + 0x2e9], ebx
lea eax, [esp + 0x260]
push eax
lea ecx, [esp + 0x230]
push 4
push ecx
mov dword [esp + 0x2f9], ebx
mov word [esp + 0x2fd], bx
mov byte [esp + 0x37c], bl
mov dword [esp + 0x37d], ebx
mov dword [esp + 0x381], ebx
mov dword [esp + 0x385], ebx
mov dword [esp + 0x389], ebx
mov dword [esp + 0x38d], ebx
mov word [esp + 0x391], bx
mov byte [esp + 0x393], bl
mov byte [esp + 0x25c], bl
mov dword [esp + 0x25d], ebx
mov word [esp + 0x261], bx
mov byte [esp + 0x263], bl
mov byte [esp + 0x44], 0x97
mov byte [esp + 0x45], 1
mov byte [esp + 0x29c], 0x8e
mov byte [esp + 0x29d], 8
mov dword [esp + 0x29e], ebx
mov dword [esp + 0x2a2], ebx
mov byte [esp + 0x2c8], bl
mov dword [esp + 0x2c9], ebx
mov dword [esp + 0x2cd], ebx
mov dword [esp + 0x2d1], ebx
mov dword [esp + 0x2d5], ebx
mov word [esp + 0x2d9], bx
call fcn.20008ed0
mov esi, dword [esp + 0x26c]
mov edi, dword [esp + 0x270]
mov bp, word [esp + 0x44]
lea edx, [esp + 0x274]
mov al, 6
push edx
mov byte [esp + 0x29a], al
call fcn.200091b0
mov eax, dword [esp + 0x278]
mov ecx, dword [esp + 0x27c]
mov dl, byte [esp + 0x29a]
mov dword [esp + 0x2f0], eax
mov ax, bp
mov word [esp + 0x300], ax
lea eax, [esp + 0x380]
push eax
mov dword [esp + 0x2f8], ecx
lea ecx, [esp + 0x2f4]
push 0x13
push ecx
mov dword [esp + 0x304], esi
mov dword [esp + 0x308], edi
mov byte [esp + 0x30e], dl
call fcn.20008ed0
add esp, 0x44
lea edx, [esp + 0x228]
push edx
push 0x18
lea eax, [esp + 0x350]
push eax
lea ecx, [esp + 0x280]
push ecx
call fcn.20008fa0
mov eax, dword [esp + 0x23c]
mov edx, dword [esp + 0x238]
mov dword [esp + 0x27e], eax
mov al, 6
mov dword [esp + 0x27a], edx
mov ecx, dword [esp + 0x278]
mov edx, dword [esp + 0x27c]
mov byte [esp + 0x2ab], al
mov ax, word [esp + 0x280]
mov dword [esp + 0x2a4], esi
mov byte [esp + 0x2a8], 0xd
mov word [esp + 0x2a9], bp
mov dword [esp + 0x2ac], ecx
mov dword [esp + 0x2b0], edx
mov word [esp + 0x2b4], ax
mov byte [esp + 0x2b6], bl
push 0x100
lea ecx, [esp + 0x45c]
push ebx
push ecx
mov dword [esp + 0x228], 0x100
call fcn.200132c0
add esp, 0x1c
lea edx, [esp + 0x448]
push edx
mov edx, dword [0x200298e8]
lea eax, [esp + 0x210]
push eax
lea ecx, [esp + 0x29c]
push ecx
push 0x13
push edx
call fcn.20002870
cmp byte [esp + 0x455], 0x90
jne 0x2000a3f1
cmp byte [esp + 0x456], bl
jne 0x2000a3f1
lea eax, [esp + 0x240]
push eax
mov byte [esp + 0x208], 0x99
mov byte [esp + 0x209], 2
mov byte [esp + 0x20a], 0x90
mov byte [esp + 0x20b], bl
mov dword [esp + 0x2ad], ebx
mov dword [esp + 0x2b1], ebx
mov dword [esp + 0x2b5], ebx
mov word [esp + 0x2b9], bx
mov byte [esp + 0x2bb], bl
mov byte [esp + 0x22c], bl
mov dword [esp + 0x22d], ebx
mov word [esp + 0x231], bx
mov byte [esp + 0x233], bl
call fcn.200091b0
mov ecx, dword [esp + 0x244]
mov edx, dword [esp + 0x248]
mov eax, dword [esp + 0x208]
mov dword [esp + 0x2ac], ecx
lea ecx, [esp + 0x2ac]
push ecx
mov dword [esp + 0x2b4], edx
mov edx, ecx
push 0xc
push edx
mov dword [esp + 0x2c0], eax
call fcn.20008ed0
lea eax, [esp + 0x238]
push eax
push 0x10
lea ecx, [esp + 0x2c0]
push ecx
lea edx, [esp + 0x290]
push edx
call fcn.20008fa0
add esp, 0x20
jmp 0x2000a3b0
mov al, byte [esp + ebx + 0x228]
cmp al, byte [esp + ebx + 0x3a0]
jne 0x2000a3ea
inc ebx
cmp ebx, 8
jb 0x2000a3b0
xor eax, eax
mov ecx, dword [esp + 0x930]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.20012ef0
add esp, 0x924
ret 0xc
mov eax, 0xfffffffa
jmp 0x2000a3c8
mov eax, 0xfffffff8
jmp 0x2000a3c8
mov eax, 0xfffffff9
jmp 0x2000a3c8
mov eax, 0xfffffffb
jmp 0x2000a3c8
mov eax, 0xfffffffc
jmp 0x2000a3c8