Function at 0x100a951d
Capabilities:
Encrypt data using twofish

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2b4
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
cmp dword [0x1014c57c], 0
je 0x100a9542
call fcn.100a8e59
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x50]
lea edx, [ecx + ecx + 8]
mov dword [ebp - 0x250], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x230], ecx
mov eax, dword [ebp - 0x230]
add eax, 0x3f
cdq
and edx, 0x3f
add eax, edx
sar eax, 6
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x238], 0
mov edx, dword [ebp - 0x234]
sub edx, 1
mov dword [ebp - 0x23c], edx
jmp 0x100a95af
mov eax, dword [ebp - 0x238]
add eax, 1
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x23c]
sub ecx, 1
mov dword [ebp - 0x23c], ecx
mov edx, dword [ebp - 0x238]
cmp edx, dword [ebp - 0x234]
jge 0x100a963c
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp - 0x238]
mov edx, dword [ebp + 8]
mov eax, dword [edx + eax*4 + 0x54]
mov dword [ebp + ecx*4 - 0x2c], eax
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp - 0x238]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + ecx*4 + 0x58]
mov dword [ebp + edx*4 - 0x24c], ecx
mov edx, dword [ebp - 0x238]
mov eax, dword [ebp + edx*4 - 0x24c]
push eax
mov ecx, dword [ebp - 0x238]
mov edx, dword [ebp + ecx*4 - 0x2c]
push edx
call fcn.100a8d58
add esp, 8
mov ecx, dword [ebp - 0x23c]
mov edx, dword [ebp + 8]
mov dword [edx + ecx*4 + 0x74], eax
mov eax, dword [ebp - 0x23c]
mov ecx, dword [ebp - 0x23c]
mov edx, dword [ebp + 8]
mov ecx, dword [edx + ecx*4 + 0x74]
mov dword [ebp + eax*4 - 0x10], ecx
jmp 0x100a9591
mov dword [ebp - 0x14], 0
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x238], edx
jmp 0x100a9669
mov eax, dword [ebp - 0x238]
add eax, 1
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x2020202
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x250]
cdq
sub eax, edx
sar eax, 1
cmp dword [ebp - 0x238], eax
jge 0x100a9b88
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x254], edx
mov eax, dword [ebp - 0x234]
and eax, 3
mov dword [ebp - 0x2ac], eax
cmp dword [ebp - 0x2ac], 0
je 0x100a96c0
cmp dword [ebp - 0x2ac], 2
je 0x100a97e0
cmp dword [ebp - 0x2ac], 3
je 0x100a9750
jmp 0x100a98c2
mov ecx, dword [ebp - 0x254]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
mov eax, dword [ebp - 0x20]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x254], dl
mov ecx, dword [ebp - 0x253]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
mov eax, dword [ebp - 0x1f]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x253], dl
mov ecx, dword [ebp - 0x252]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
mov eax, dword [ebp - 0x1e]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x252], dl
mov ecx, dword [ebp - 0x251]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
mov eax, dword [ebp - 0x1d]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x251], dl
mov ecx, dword [ebp - 0x254]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
mov eax, dword [ebp - 0x24]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x254], dl
mov ecx, dword [ebp - 0x253]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
mov eax, dword [ebp - 0x23]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x253], dl
mov ecx, dword [ebp - 0x252]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
mov eax, dword [ebp - 0x22]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x252], dl
mov ecx, dword [ebp - 0x251]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
mov eax, dword [ebp - 0x21]
and eax, 0xff
xor edx, eax
mov byte [ebp - 0x251], dl
mov ecx, dword [ebp - 0x254]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
mov eax, dword [ebp - 0x28]
and eax, 0xff
xor edx, eax
xor ecx, ecx
mov cl, byte [edx + 0x1014c37c]
mov edx, dword [ebp - 0x2c]
and edx, 0xff
xor ecx, edx
mov eax, dword [ebp - 0x253]
and eax, 0xff
xor edx, edx
mov dl, byte [eax + 0x1014c47c]
mov eax, dword [ebp - 0x27]
and eax, 0xff
xor edx, eax
xor eax, eax
mov al, byte [edx + 0x1014c37c]
mov edx, dword [ebp - 0x2b]
and edx, 0xff
xor eax, edx
mov ecx, dword [ecx*4 + 0x10183ea0]
xor ecx, dword [eax*4 + 0x101842a0]
mov edx, dword [ebp - 0x252]
and edx, 0xff
xor eax, eax
mov al, byte [edx + 0x1014c37c]
mov edx, dword [ebp - 0x26]
and edx, 0xff
xor eax, edx
xor edx, edx
mov dl, byte [eax + 0x1014c47c]
mov eax, dword [ebp - 0x2a]
and eax, 0xff
xor edx, eax
xor ecx, dword [edx*4 + 0x101846a0]
mov edx, dword [ebp - 0x251]
and edx, 0xff
xor eax, eax
mov al, byte [edx + 0x1014c47c]
mov edx, dword [ebp - 0x25]
and edx, 0xff
xor eax, edx
xor edx, edx
mov dl, byte [eax + 0x1014c47c]
mov eax, dword [ebp - 0x29]
and eax, 0xff
xor edx, eax
xor ecx, dword [edx*4 + 0x10184aa0]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x14]
add ecx, 0x1010101
mov dword [ebp - 0x258], ecx
mov edx, dword [ebp - 0x234]
and edx, 3
mov dword [ebp - 0x2b0], edx
cmp dword [ebp - 0x2b0], 0
je 0x100a9908
cmp dword [ebp - 0x2b0], 2
je 0x100a9a40
cmp dword [ebp - 0x2b0], 3
je 0x100a99a4
jmp 0x100a9b3e
mov eax, dword [ebp - 0x258]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
mov edx, dword [ebp - 0x240]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x258], cl
mov eax, dword [ebp - 0x257]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
mov edx, dword [ebp - 0x23f]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x257], cl
mov eax, dword [ebp - 0x256]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
mov edx, dword [ebp - 0x23e]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x256], cl
mov eax, dword [ebp - 0x255]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
mov edx, dword [ebp - 0x23d]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x255], cl
mov eax, dword [ebp - 0x258]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
mov edx, dword [ebp - 0x244]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x258], cl
mov eax, dword [ebp - 0x257]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
mov edx, dword [ebp - 0x243]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x257], cl
mov eax, dword [ebp - 0x256]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
mov edx, dword [ebp - 0x242]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x256], cl
mov eax, dword [ebp - 0x255]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
mov edx, dword [ebp - 0x241]
and edx, 0xff
xor ecx, edx
mov byte [ebp - 0x255], cl
mov eax, dword [ebp - 0x258]
and eax, 0xff
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
mov edx, dword [ebp - 0x248]
and edx, 0xff
xor ecx, edx
xor eax, eax
mov al, byte [ecx + 0x1014c37c]
mov ecx, dword [ebp - 0x24c]
and ecx, 0xff
xor eax, ecx
mov edx, dword [ebp - 0x257]
and edx, 0xff
xor ecx, ecx
mov cl, byte [edx + 0x1014c47c]
mov edx, dword [ebp - 0x247]
and edx, 0xff
xor ecx, edx
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
mov ecx, dword [ebp - 0x24b]
and ecx, 0xff
xor edx, ecx
mov eax, dword [eax*4 + 0x10183ea0]
xor eax, dword [edx*4 + 0x101842a0]
mov ecx, dword [ebp - 0x256]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
mov ecx, dword [ebp - 0x246]
and ecx, 0xff
xor edx, ecx
xor ecx, ecx
mov cl, byte [edx + 0x1014c47c]
mov edx, dword [ebp - 0x24a]
and edx, 0xff
xor ecx, edx
xor eax, dword [ecx*4 + 0x101846a0]
mov ecx, dword [ebp - 0x255]
and ecx, 0xff
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
mov ecx, dword [ebp - 0x245]
and ecx, 0xff
xor edx, ecx
xor ecx, ecx
mov cl, byte [edx + 0x1014c47c]
mov edx, dword [ebp - 0x249]
and edx, 0xff
xor ecx, edx
xor eax, dword [ecx*4 + 0x10184aa0]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
rol eax, 8
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
add ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + edx*4 + 0x84], ecx
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx*2]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
rol ecx, 9
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + edx*4 + 0x88], ecx
jmp 0x100a964e
mov ecx, dword [ebp - 0x230]
mov dword [ebp - 0x2b4], ecx
cmp dword [ebp - 0x2b4], 0x80
je 0x100a9bc5
cmp dword [ebp - 0x2b4], 0xc0
je 0x100a9ec5
cmp dword [ebp - 0x2b4], 0x100
je 0x100aa27f
jmp 0x100aa850
mov dl, byte [ebp - 0xc]
push edx
push 0x1014c37c
lea eax, [ebp - 0x12c]
push eax
call fcn.100a9123
add esp, 0xc
mov ecx, dword [ebp - 0x10]
and ecx, 0xff
mov dword [ebp - 0x25c], ecx
mov dword [ebp - 0x238], 0
jmp 0x100a9c07
mov edx, dword [ebp - 0x238]
add edx, 2
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x100
jge 0x100a9c84
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12c]
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
xor edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x10183ea0]
mov dword [ecx + eax*4 + 0x124], edx
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12b]
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
xor edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x10183ea0]
mov dword [ecx + eax*4 + 0x12c], edx
jmp 0x100a9bf8
mov al, byte [ebp - 0xb]
push eax
push 0x1014c47c
lea ecx, [ebp - 0x12c]
push ecx
call fcn.100a9123
add esp, 0xc
mov edx, dword [ebp - 0xf]
and edx, 0xff
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x238], 0
jmp 0x100a9cc6
mov eax, dword [ebp - 0x238]
add eax, 2
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0x100
jge 0x100a9d43
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x12c]
xor eax, eax
mov al, byte [edx + 0x1014c37c]
xor eax, dword [ebp - 0x260]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x101842a0]
mov dword [edx + ecx*4 + 0x128], eax
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x12b]
xor eax, eax
mov al, byte [edx + 0x1014c37c]
xor eax, dword [ebp - 0x260]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x101842a0]
mov dword [edx + ecx*4 + 0x130], eax
jmp 0x100a9cb7
mov cl, byte [ebp - 0xa]
push ecx
push 0x1014c37c
lea edx, [ebp - 0x12c]
push edx
call fcn.100a9123
add esp, 0xc
mov eax, dword [ebp - 0xe]
and eax, 0xff
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x238], 0
jmp 0x100a9d84
mov ecx, dword [ebp - 0x238]
add ecx, 2
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0x100
jge 0x100a9e01
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x12c]
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
xor ecx, dword [ebp - 0x264]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x101846a0]
mov dword [eax + edx*4 + 0x924], ecx
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x12b]
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
xor ecx, dword [ebp - 0x264]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x101846a0]
mov dword [eax + edx*4 + 0x92c], ecx
jmp 0x100a9d75
mov dl, byte [ebp - 9]
push edx
push 0x1014c47c
lea eax, [ebp - 0x12c]
push eax
call fcn.100a9123
add esp, 0xc
mov ecx, dword [ebp - 0xd]
and ecx, 0xff
mov dword [ebp - 0x268], ecx
mov dword [ebp - 0x238], 0
jmp 0x100a9e43
mov edx, dword [ebp - 0x238]
add edx, 2
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x100
jge 0x100a9ec0
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12c]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x268]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x10184aa0]
mov dword [ecx + eax*4 + 0x928], edx
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12b]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x268]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x10184aa0]
mov dword [ecx + eax*4 + 0x930], edx
jmp 0x100a9e34
jmp 0x100aa850
mov al, byte [ebp - 8]
push eax
push 0x1014c47c
lea ecx, [ebp - 0x12c]
push ecx
call fcn.100a9123
add esp, 0xc
mov edx, dword [ebp - 0x10]
and edx, 0xff
mov dword [ebp - 0x26c], edx
mov eax, dword [ebp - 0xc]
and eax, 0xff
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x238], 0
jmp 0x100a9f15
mov ecx, dword [ebp - 0x238]
add ecx, 2
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0x100
jge 0x100a9fb2
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x12c]
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
xor ecx, dword [ebp - 0x270]
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
xor edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x10183ea0]
mov dword [ecx + eax*4 + 0x124], edx
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12b]
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
xor edx, dword [ebp - 0x270]
xor eax, eax
mov al, byte [edx + 0x1014c37c]
xor eax, dword [ebp - 0x26c]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x10183ea0]
mov dword [edx + ecx*4 + 0x12c], eax
jmp 0x100a9f06
mov cl, byte [ebp - 7]
push ecx
push 0x1014c47c
lea edx, [ebp - 0x12c]
push edx
call fcn.100a9123
add esp, 0xc
mov eax, dword [ebp - 0xf]
and eax, 0xff
mov dword [ebp - 0x274], eax
mov ecx, dword [ebp - 0xb]
and ecx, 0xff
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x238], 0
jmp 0x100aa002
mov edx, dword [ebp - 0x238]
add edx, 2
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x100
jge 0x100aa09f
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12c]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x278]
xor eax, eax
mov al, byte [edx + 0x1014c37c]
xor eax, dword [ebp - 0x274]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x101842a0]
mov dword [edx + ecx*4 + 0x128], eax
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x12b]
xor eax, eax
mov al, byte [edx + 0x1014c47c]
xor eax, dword [ebp - 0x278]
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
xor ecx, dword [ebp - 0x274]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x101842a0]
mov dword [eax + edx*4 + 0x130], ecx
jmp 0x100a9ff3
mov dl, byte [ebp - 6]
push edx
push 0x1014c37c
lea eax, [ebp - 0x12c]
push eax
call fcn.100a9123
add esp, 0xc
mov ecx, dword [ebp - 0xe]
and ecx, 0xff
mov dword [ebp - 0x27c], ecx
mov edx, dword [ebp - 0xa]
and edx, 0xff
mov dword [ebp - 0x280], edx
mov dword [ebp - 0x238], 0
jmp 0x100aa0f0
mov eax, dword [ebp - 0x238]
add eax, 2
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0x100
jge 0x100aa18d
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x12c]
xor eax, eax
mov al, byte [edx + 0x1014c37c]
xor eax, dword [ebp - 0x280]
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
xor ecx, dword [ebp - 0x27c]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x101846a0]
mov dword [eax + edx*4 + 0x924], ecx
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x12b]
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
xor ecx, dword [ebp - 0x280]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x27c]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x101846a0]
mov dword [ecx + eax*4 + 0x92c], edx
jmp 0x100aa0e1
mov al, byte [ebp - 5]
push eax
push 0x1014c37c
lea ecx, [ebp - 0x12c]
push ecx
call fcn.100a9123
add esp, 0xc
mov edx, dword [ebp - 0xd]
and edx, 0xff
mov dword [ebp - 0x284], edx
mov eax, dword [ebp - 9]
and eax, 0xff
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x238], 0
jmp 0x100aa1dd
mov ecx, dword [ebp - 0x238]
add ecx, 2
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0x100
jge 0x100aa27a
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x12c]
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
xor ecx, dword [ebp - 0x288]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x284]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x10184aa0]
mov dword [ecx + eax*4 + 0x928], edx
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12b]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x288]
xor eax, eax
mov al, byte [edx + 0x1014c47c]
xor eax, dword [ebp - 0x284]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x10184aa0]
mov dword [edx + ecx*4 + 0x930], eax
jmp 0x100aa1ce
jmp 0x100aa850
mov cl, byte [ebp - 4]
push ecx
push 0x1014c47c
lea edx, [ebp - 0x22c]
push edx
call fcn.100a9123
add esp, 0xc
mov dword [ebp - 0x238], 0
jmp 0x100aa2b2
mov eax, dword [ebp - 0x238]
add eax, 2
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0x100
jge 0x100aa304
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x22c]
mov eax, dword [ebp - 0x238]
mov cl, byte [edx + 0x1014c47c]
mov byte [ebp + eax - 0x12c], cl
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x22b]
mov ecx, dword [ebp - 0x238]
mov dl, byte [eax + 0x1014c47c]
mov byte [ebp + ecx - 0x12b], dl
jmp 0x100aa2a3
mov al, byte [ebp - 8]
push eax
lea ecx, [ebp - 0x12c]
push ecx
lea edx, [ebp - 0x12c]
push edx
call fcn.100a9123
add esp, 0xc
mov eax, dword [ebp - 0x10]
and eax, 0xff
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0xc]
and ecx, 0xff
mov dword [ebp - 0x290], ecx
mov dword [ebp - 0x238], 0
jmp 0x100aa356
mov edx, dword [ebp - 0x238]
add edx, 2
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x100
jge 0x100aa3f3
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12c]
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
xor edx, dword [ebp - 0x290]
xor eax, eax
mov al, byte [edx + 0x1014c37c]
xor eax, dword [ebp - 0x28c]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x10183ea0]
mov dword [edx + ecx*4 + 0x124], eax
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x12b]
xor eax, eax
mov al, byte [edx + 0x1014c37c]
xor eax, dword [ebp - 0x290]
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
xor ecx, dword [ebp - 0x28c]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x10183ea0]
mov dword [eax + edx*4 + 0x12c], ecx
jmp 0x100aa347
mov dl, byte [ebp - 3]
push edx
push 0x1014c37c
lea eax, [ebp - 0x22c]
push eax
call fcn.100a9123
add esp, 0xc
mov dword [ebp - 0x238], 0
jmp 0x100aa426
mov ecx, dword [ebp - 0x238]
add ecx, 2
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0x100
jge 0x100aa478
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x22c]
mov ecx, dword [ebp - 0x238]
mov dl, byte [eax + 0x1014c47c]
mov byte [ebp + ecx - 0x12c], dl
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x22b]
mov edx, dword [ebp - 0x238]
mov al, byte [ecx + 0x1014c47c]
mov byte [ebp + edx - 0x12b], al
jmp 0x100aa417
mov cl, byte [ebp - 7]
push ecx
lea edx, [ebp - 0x12c]
push edx
lea eax, [ebp - 0x12c]
push eax
call fcn.100a9123
add esp, 0xc
mov ecx, dword [ebp - 0xf]
and ecx, 0xff
mov dword [ebp - 0x294], ecx
mov edx, dword [ebp - 0xb]
and edx, 0xff
mov dword [ebp - 0x298], edx
mov dword [ebp - 0x238], 0
jmp 0x100aa4cb
mov eax, dword [ebp - 0x238]
add eax, 2
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0x100
jge 0x100aa568
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x12c]
xor eax, eax
mov al, byte [edx + 0x1014c47c]
xor eax, dword [ebp - 0x298]
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
xor ecx, dword [ebp - 0x294]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x101842a0]
mov dword [eax + edx*4 + 0x128], ecx
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x12b]
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
xor ecx, dword [ebp - 0x298]
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
xor edx, dword [ebp - 0x294]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x101842a0]
mov dword [ecx + eax*4 + 0x130], edx
jmp 0x100aa4bc
mov al, byte [ebp - 2]
push eax
push 0x1014c37c
lea ecx, [ebp - 0x22c]
push ecx
call fcn.100a9123
add esp, 0xc
mov dword [ebp - 0x238], 0
jmp 0x100aa59b
mov edx, dword [ebp - 0x238]
add edx, 2
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x100
jge 0x100aa5ed
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x22c]
mov edx, dword [ebp - 0x238]
mov al, byte [ecx + 0x1014c37c]
mov byte [ebp + edx - 0x12c], al
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x22b]
mov eax, dword [ebp - 0x238]
mov cl, byte [edx + 0x1014c37c]
mov byte [ebp + eax - 0x12b], cl
jmp 0x100aa58c
mov dl, byte [ebp - 6]
push edx
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.100a9123
add esp, 0xc
mov edx, dword [ebp - 0xe]
and edx, 0xff
mov dword [ebp - 0x29c], edx
mov eax, dword [ebp - 0xa]
and eax, 0xff
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x238], 0
jmp 0x100aa63f
mov ecx, dword [ebp - 0x238]
add ecx, 2
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0x100
jge 0x100aa6dc
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x12c]
xor ecx, ecx
mov cl, byte [eax + 0x1014c37c]
xor ecx, dword [ebp - 0x2a0]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x29c]
mov eax, dword [ebp - 0x238]
shl eax, 1
mov ecx, dword [ebp + 8]
mov edx, dword [edx*4 + 0x101846a0]
mov dword [ecx + eax*4 + 0x924], edx
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12b]
xor edx, edx
mov dl, byte [ecx + 0x1014c37c]
xor edx, dword [ebp - 0x2a0]
xor eax, eax
mov al, byte [edx + 0x1014c47c]
xor eax, dword [ebp - 0x29c]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x101846a0]
mov dword [edx + ecx*4 + 0x92c], eax
jmp 0x100aa630
mov cl, byte [ebp - 1]
push ecx
push 0x1014c47c
lea edx, [ebp - 0x22c]
push edx
call fcn.100a9123
add esp, 0xc
mov dword [ebp - 0x238], 0
jmp 0x100aa70f
mov eax, dword [ebp - 0x238]
add eax, 2
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0x100
jge 0x100aa761
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x22c]
mov eax, dword [ebp - 0x238]
mov cl, byte [edx + 0x1014c37c]
mov byte [ebp + eax - 0x12c], cl
mov edx, dword [ebp - 0x238]
xor eax, eax
mov al, byte [ebp + edx - 0x22b]
mov ecx, dword [ebp - 0x238]
mov dl, byte [eax + 0x1014c37c]
mov byte [ebp + ecx - 0x12b], dl
jmp 0x100aa700
mov al, byte [ebp - 5]
push eax
lea ecx, [ebp - 0x12c]
push ecx
lea edx, [ebp - 0x12c]
push edx
call fcn.100a9123
add esp, 0xc
mov eax, dword [ebp - 0xd]
and eax, 0xff
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 9]
and ecx, 0xff
mov dword [ebp - 0x2a8], ecx
mov dword [ebp - 0x238], 0
jmp 0x100aa7b3
mov edx, dword [ebp - 0x238]
add edx, 2
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x100
jge 0x100aa850
mov eax, dword [ebp - 0x238]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x12c]
xor edx, edx
mov dl, byte [ecx + 0x1014c47c]
xor edx, dword [ebp - 0x2a8]
xor eax, eax
mov al, byte [edx + 0x1014c47c]
xor eax, dword [ebp - 0x2a4]
mov ecx, dword [ebp - 0x238]
shl ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [eax*4 + 0x10184aa0]
mov dword [edx + ecx*4 + 0x928], eax
mov ecx, dword [ebp - 0x238]
xor edx, edx
mov dl, byte [ebp + ecx - 0x12b]
xor eax, eax
mov al, byte [edx + 0x1014c47c]
xor eax, dword [ebp - 0x2a8]
xor ecx, ecx
mov cl, byte [eax + 0x1014c47c]
xor ecx, dword [ebp - 0x2a4]
mov edx, dword [ebp - 0x238]
shl edx, 1
mov eax, dword [ebp + 8]
mov ecx, dword [ecx*4 + 0x10184aa0]
mov dword [eax + edx*4 + 0x930], ecx
jmp 0x100aa7a4
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx]
test eax, eax
jne 0x100aa869
push 0
mov ecx, dword [ebp + 8]
push ecx
call fcn.100a909e
add esp, 8
mov eax, 1
mov esp, ebp
pop ebp
ret