Function at 0x10009900
Capabilities:
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
endbr32
push ebp
mov ebp, esp
push esi
push edi
push ebx
sub esp, 0x290
mov ebx, dword [ebp + 8]
mov eax, dword [0x10234e38]
xor eax, ebp
mov edi, dword [ebx + 4]
mov dword [ebp - 0x10], eax
test edi, edi
je 0x1000b75c
mov esi, dword [edi + 0x6c]
cmp dword [edi + 0xf0], 0
jle 0x1000b2f5
xor ecx, ecx
mov dword [ebp - 0x260], 1
mov dword [ebp - 0x264], ecx
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x258], ecx
mov dword [ebp - 0x250], ecx
mov dword [ebp - 0x25c], ebx
test byte [edi + 0x19c], 0x20
jne 0x1000b62f
mov ebx, dword [esi + 0x14]
cmp ebx, 1
jbe 0x10009a26
mov ecx, dword [esi + 0x54]
lea edx, [ebx - 1]
mov dword [esi + 0x5c], ecx
mov ecx, dword [esi + 0x58]
and ecx, 1
movzx eax, byte [esi + 0x74]
add ecx, ecx
and eax, 0xfffffffd
or eax, ecx
mov byte [esi + 0x74], al
movzx eax, byte [esi + 0x73]
mov dword [esi + 0x14], edx
test al, 0x10
je 0x10009a7a
test al, 0x20
je 0x10009a7a
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x288], ecx
movsx ecx, byte [ecx]
cmp ecx, 0x41
jne 0x100099d3
mov ecx, dword [ebp - 0x288]
lea eax, [ecx + 2]
mov dword [ebp + 0xc], eax
movsx ecx, byte [eax]
movzx eax, byte [esi + 0x73]
cmp ecx, 2
je 0x1000a694
and eax, 0xffffffdf
cmp ecx, 1
je 0x1000a66f
and eax, 0xffffffbf
mov byte [esi + 0x73], al
push edi
mov dword [ebp - 0x284], edx
call fcn.1002cce0
mov edx, dword [ebp - 0x284]
add esp, 4
test eax, eax
jne 0x1000a5d6
movzx eax, byte [esi + 0x73]
test al, 0x10
je 0x10009a1b
test al, 0x20
jne 0x1000a5b6
mov dword [esi + 0x14], edx
or eax, 0x20
mov byte [esi + 0x73], al
jmp 0x10009a7a
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x41
jne 0x10009a3a
lea eax, [edx + 2]
mov dword [ebp + 0xc], eax
movsx eax, byte [eax]
cmp eax, 2
je 0x1000b609
movzx edx, byte [esi + 0x73]
and edx, 0xffffffdf
cmp eax, 1
je 0x1000b5e4
and edx, 0xffffffbf
mov byte [esi + 0x73], dl
push edi
call fcn.1002cce0
add esp, 4
test eax, eax
jne 0x1000b543
movzx eax, byte [esi + 0x73]
test al, 0x10
je 0x10009a7a
test al, 0x20
jne 0x1000b51b
movsx edx, byte [esi + 0x6c]
cmp edx, 0x12
je 0x1000b430
cmp edx, 2
je 0x1000b153
cmp edx, 0x1c
je 0x1000a46c
cmp edx, 0x11
jne 0x10009b15
cmp dword [ebp - 0x260], 2
jge 0x1000a4a3
mov edx, dword [ebp + 0xc]
movsx edx, byte [edx]
cmp edx, 1
je 0x1000b425
cmp edx, 2
jne 0x10009ae8
mov dword [esi + 0x14], 2
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push dword [ebp - 0x260]
lea eax, [ebp + 0x10]
push eax
lea edx, [ebp + 0xc]
push edx
call fcn.1002b760
add esp, 0xc
cmp eax, 2
je 0x1000a6b6
cmp eax, 1
je 0x1000a4b0
jmp 0x1000a4a3
cmp edx, 0x10
je 0x1000a4a3
cmp dword [ebp - 0x260], 1
jle 0x10009bbc
mov eax, dword [ebp - 0x190]
add eax, 0xfffffff9
cmp eax, 1
ja 0x10009b90
cmp dword [ebp - 0x264], 0
je 0x10009b63
mov eax, dword [ebp - 0x274]
add dword [ebp - 0x280], eax
dec dword [ebp - 0x260]
mov dword [ebp - 0x264], 0
jmp 0x10009da9
xor eax, eax
cmp dword [ebp - 0x258], 0
lea edx, [ebp - 0x20c]
push edx
lea ecx, [ebp - 0x190]
push ecx
setne al
mov dword [edx - 0x58], eax
call fcn.1002db90
add esp, 8
mov dword [ebp - 0x280], eax
jmp 0x10009bb1
mov edx, dword [ebp - 0x264]
test edx, edx
mov eax, dword [ebp - 0x274]
je 0x10009ba5
mov edx, 0
add dword [ebp - 0x280], eax
mov dword [ebp - 0x264], edx
dec dword [ebp - 0x260]
jmp 0x10009da9
lea eax, [ebp - 0x190]
push eax
lea edx, [ebp - 0x280]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea ebx, [ebp + 0xc]
push ebx
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x1000af44
mov eax, dword [ebp - 0x278]
cmp eax, 2
je 0x1000af15
cmp eax, 1
je 0x1000a4b0
cmp eax, 0x41
je 0x1000ae4a
mov edx, dword [ebp - 0x190]
lea eax, [edx - 7]
cmp eax, 1
ja 0x10009d17
mov ecx, dword [ebp - 0x274]
test ecx, ecx
je 0x10009c30
mov eax, dword [ebp - 0x27c]
cdq
idiv ecx
mov dword [ebp - 0x260], eax
jmp 0x10009c49
test byte [edi + 0x190], 2
je 0x10009d0b
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x10009d6a
mov edx, dword [ebp - 0x278]
lea eax, [edx - 0x1c]
cmp eax, 0x10
jbe 0x10009c75
cmp edx, 0x34
je 0x10009c75
mov dword [ebp - 0x258], 0
jmp 0x10009c86
mov eax, 1
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x264], eax
mov eax, dword [ebp - 0x18c]
test eax, eax
jle 0x10009cea
mov ebx, eax
shr ebx, 1
je 0x1000a6e7
xor ecx, ecx
mov dword [ebp - 0x26c], edi
xor edx, edx
mov edi, dword [ebp + edx - 0x180]
mov dword [ebp + ecx*8 - 0x20c], edi
mov edi, dword [ebp + edx - 0x174]
add edx, 0x18
mov dword [ebp + ecx*8 - 0x208], edi
inc ecx
cmp ecx, ebx
jb 0x10009ca4
mov edi, dword [ebp - 0x26c]
lea edx, [ecx + ecx + 1]
lea ecx, [edx - 1]
cmp ecx, eax
jae 0x10009cea
lea eax, [edx + edx*2]
mov ecx, dword [ebp + eax*4 - 0x18c]
mov dword [ebp + edx*4 - 0x210], ecx
lea eax, [ebp - 0x20c]
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.1002db90
add esp, 8
mov dword [ebp - 0x280], eax
jmp 0x10009da9
mov dword [ebp - 0x260], 0
jmp 0x10009d6a
add edx, 0xfffffffb
cmp edx, 1
ja 0x10009d76
movzx ebx, byte [edi + 0x190]
and ebx, 2
mov eax, dword [ebp - 0x27c]
mov ecx, dword [ebp - 0x274]
shr ebx, 1
mov dword [ebp - 0x260], eax
test ecx, ecx
je 0x10009d50
cdq
idiv ecx
mov dword [ebp - 0x260], eax
test ebx, ebx
jne 0x10009d61
jmp 0x10009da9
test ebx, ebx
jne 0x10009d59
mov eax, 0
mov dword [ebp - 0x260], eax
je 0x10009da9
cmp dword [ebp - 0x260], 0
jne 0x10009da9
mov dword [ebp - 0x250], 1
jmp 0x10009db2
mov edx, dword [ebp - 0x278]
lea eax, [edx - 0x1c]
cmp eax, 0x10
jbe 0x10009d95
cmp edx, 0x34
je 0x10009d95
mov dword [ebp - 0x260], 1
jmp 0x10009da9
mov dword [ebp - 0x260], 2
mov dword [ebp - 0x264], 1
cmp dword [ebp - 0x250], 0
je 0x10009dce
mov eax, dword [esi + 0x14]
test eax, eax
jne 0x10009dc5
mov dword [esi + 0x14], 2
jmp 0x1000a4a3
inc eax
mov dword [esi + 0x14], eax
jmp 0x1000a4a3
mov edx, dword [ebp - 0x278]
mov eax, edx
and eax, 0xfffffffd
movsx ecx, byte [esi + 0x6c]
cmp eax, 0x40
je 0x1000ac98
cmp edx, 0x40
je 0x1000ab89
cmp edx, 0x42
je 0x1000aac4
lea eax, [edx - 0x40]
add edx, 0xffffffbe
or eax, edx
je 0x10009e0b
cmp ecx, 0x74
je 0x1000aa08
mov eax, dword [esi]
and byte [esi + 0x73], 0xf7
movzx edx, byte [eax + 0x196]
test edx, 0x80
je 0x10009e43
mov eax, dword [ecx*4 + 0x10213fc0]
test eax, eax
je 0x10009e43
mov edx, dword [ebp - 0x278]
movsx eax, byte [eax + edx]
test eax, eax
je 0x10009e43
mov dword [ebp - 0x278], eax
movsx ecx, byte [esi + 0x6c]
movzx eax, byte [esi + 0x75]
and eax, 0xfffffffb
mov dword [ebp - 0x290], eax
mov byte [esi + 0x75], al
lea eax, [ecx - 0x13]
cmp eax, 0x20
ja 0x1000a1f9
movzx eax, word [eax*2 + 0x1020c648]
add eax, 0x10009e6f
notrack jmp eax
mov eax, dword [ebp - 0x294]
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000a726
test byte [edx + 0x44], 2
je 0x1000a6f1
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000a19f
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
add ecx, 0xffffffd8
cmp ecx, 0x20
jae 0x1000a232
mov eax, 1
shl eax, cl
mov dword [ebp - 0x294], 0
test al, 0x25
je 0x1000a232
mov edx, dword [esi + 0x64]
mov eax, dword [esi + 0x5c]
cmp edx, eax
jge 0x1000a222
mov edx, eax
mov dword [esi + 0x5c], edx
cmp dword [ebp - 0x294], 0
jne 0x1000a16c
mov ebx, dword [esi + 0x5c]
test byte [esi + 0x74], 2
je 0x1000a3bd
test ebx, ebx
jle 0x1000a268
movsx eax, word [esi + 0x64]
test byte [ebp - 0x290], 4
je 0x1000a25e
lea edx, [eax + 6]
cmp edx, ebx
jle 0x1000a25e
mov dword [esi + 0x5c], edx
mov ebx, edx
jmp 0x1000a268
cmp eax, ebx
jle 0x1000a268
lea ebx, [eax + 1]
mov dword [esi + 0x5c], ebx
cmp ebx, 0x40
ja 0x1000a282
mov dword [ebp - 0x254], 0
lea eax, [ebp - 0x24c]
mov dword [eax - 0x40], eax
jmp 0x1000a2a8
lea eax, [ebp - 0x28c]
push eax
push 0
push ebx
call fcn.10025750
add esp, 0xc
test eax, eax
jne 0x1000a7fc
mov eax, dword [ebp - 0x28c]
mov dword [ebp - 0x254], eax
push dword [esi + 0x5c]
push 0x20
push eax
call fcn.10061620
push dword [ebp - 0x28c]
push esi
lea eax, [ebp - 0x280]
push eax
call fcn.1002dd80
add esp, 0x18
test eax, eax
je 0x1000a2e6
cmp eax, 0x3f
jne 0x1000a75b
test byte [edi + 0x197], 8
jne 0x1000a2e6
mov dword [esi + 0x18], 0x3f
mov ebx, dword [esi + 0x5c]
test ebx, ebx
je 0x1000a30c
mov eax, dword [ebp - 0x28c]
cmp byte [eax], 0x20
jne 0x1000a750
inc eax
mov dword [ebp - 0x28c], eax
mov ebx, dword [esi + 0x5c]
dec ebx
mov dword [esi + 0x5c], ebx
jne 0x1000a2ed
mov eax, dword [ebp - 0x28c]
mov dword [ebp - 0x29c], eax
movsx eax, byte [eax]
cmp eax, 0x2b
je 0x1000a325
cmp eax, 0x2d
jne 0x1000a331
mov dword [ebp - 0x298], 1
jmp 0x1000a33b
mov dword [ebp - 0x298], 0
mov ecx, str.Infinity
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x1000a357
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x1000a342
dec eax
cmp ebx, eax
jb 0x1000a3a1
push eax
mov eax, dword [ebp - 0x29c]
add eax, dword [ebp - 0x298]
push str.Infinity
push eax
call fcn.101bc0e0
add esp, 0xc
test eax, eax
jne 0x1000a3a1
mov ecx, 0x1020c6ec
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x1000a396
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x1000a381
dec eax
mov ebx, eax
add ebx, dword [ebp - 0x298]
mov dword [esi + 0x5c], ebx
test ebx, ebx
jne 0x1000a3bd
movsx eax, word [esi + 0x64]
test eax, eax
jne 0x1000a3bd
mov dword [esi + 0x5c], 1
dec dword [ebp - 0x28c]
mov ebx, dword [esi + 0x5c]
mov edx, dword [edi + 0x4c]
lea eax, [ebx + edx]
cmp eax, dword [edi + 0x54]
ja 0x1000a94c
movzx eax, byte [esi + 0x74]
test al, 2
je 0x1000a434
test ebx, ebx
je 0x1000a40a
mov eax, dword [ebp - 0x28c]
movzx eax, byte [eax]
mov byte [edx], al
inc edx
mov dword [edi + 0x4c], edx
inc dword [ebp - 0x28c]
mov eax, dword [esi + 0x5c]
dec eax
je 0x1000a406
mov dword [esi + 0x5c], eax
mov eax, dword [ebp - 0x28c]
cmp byte [eax], 0x20
je 0x1000a406
mov edx, dword [edi + 0x4c]
jmp 0x1000a3de
movzx eax, byte [esi + 0x74]
and eax, 0xfffffffd
mov byte [esi + 0x74], al
mov dword [esi + 0x5c], 0
cmp dword [ebp - 0x254], 0
je 0x1000a4a3
push dword [ebp - 0x254]
call fcn.10025800
add esp, 4
jmp 0x1000a4a3
push edx
push esi
lea eax, [ebp - 0x280]
push eax
call fcn.1002dd80
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x1000a464
cmp ebx, 0x3f
jne 0x1000a89d
test byte [edi + 0x197], 8
jne 0x1000a464
mov dword [esi + 0x18], 0x3f
mov eax, dword [esi + 0x5c]
add dword [edi + 0x4c], eax
jmp 0x1000a4a3
mov edx, dword [edi + 0x4c]
mov ebx, dword [esi + 0x5c]
mov ecx, dword [esi + 0x60]
lea eax, [edx + ebx]
cmp eax, dword [edi + 0x54]
ja 0x1000b0a3
test ebx, ebx
jle 0x1000a497
xor ebx, ebx
movzx eax, byte [ebx + ecx]
inc ebx
mov byte [edx], al
inc edx
mov dword [edi + 0x4c], edx
cmp ebx, dword [esi + 0x5c]
jl 0x1000a487
mov eax, dword [edi + 0x5c]
cmp edx, eax
ja 0x1000a4a0
mov edx, eax
mov dword [edi + 0x5c], edx
cmp dword [edi + 0xf0], 0
jg 0x10009962
mov ebx, dword [ebp - 0x25c]
movzx eax, byte [esi + 0x73]
test al, 2
je 0x1000a527
push dword [esi + 4]
and eax, 0xfffffffd
mov byte [esi + 0x73], al
call fcn.10025800
add esp, 4
test eax, eax
je 0x1000a520
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000b01a
test byte [edx + 0x44], 2
je 0x1000afe5
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000a500
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [edi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov dword [esi + 4], 0
mov edx, dword [esi + 0x18]
test edx, edx
je 0x1000a57d
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000b079
test byte [eax + 0x44], 2
je 0x1000b044
mov dword [eax + 0x38], edx
mov edx, dword [edi + 0x20]
mov eax, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov eax, dword [edi + 0x78]
test eax, eax
je 0x1000a55e
xor edx, edx
mov dword [eax + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
mov eax, dword [esi + 0x18]
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push dword [edi + 0x118]
and byte [edi + 0x194], 0xdc
and byte [edi + 0x196], 0xf7
call fcn.10026c60
add esp, 4
xor edx, edx
mov dword [ebx + 4], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], edx
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov dword [esi + 0x14], ebx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
je 0x10009ade
call fcn.101a6152
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000a645
test byte [edx + 0x44], 2
je 0x1000a614
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000a5fb
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
cmp dword [ebp - 0x264], 0
jne 0x100099e8
cmp dword [ebp - 0x260], 1
jg 0x100099e8
or eax, 0x40
mov byte [esi + 0x73], al
jmp 0x100099ee
cmp dword [ebp - 0x264], 0
jne 0x100099dc
cmp dword [ebp - 0x260], 1
jg 0x100099dc
or eax, 0x20
jmp 0x100099df
cmp dword [ebp - 0x260], 2
jge 0x1000a4a3
mov dword [esi + 0x14], 2
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade
mov edx, 1
jmp 0x10009cd2
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov dword [ebp - 0x29c], eax
jmp 0x1000a318
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000a7d2
test byte [edx + 0x44], 2
je 0x1000a79d
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000a780
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000a873
test byte [edx + 0x44], 2
je 0x1000a83e
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000a821
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push esi
call fcn.1002b6e0
add esp, 4
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000a922
test byte [edx + 0x44], 2
je 0x1000a8ed
mov dword [edx + 0x38], ebx
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], ebx
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000a8cb
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
mov eax, ebx
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ebx
movzx eax, byte [edi + 0x194]
push ebx
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push ebx
push ebx
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000a9d9
test byte [eax + 0x44], 2
je 0x1000a99f
mov edx, 0x42
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000a97a
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x78], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
mov eax, 0x42
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, 0x42
push eax
movzx edx, byte [edi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
mov eax, 0x42
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000aa95
test byte [eax + 0x44], 2
je 0x1000aa5b
mov edx, 0x3d
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000aa36
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x78], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
mov eax, 0x3d
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, 0x3d
push eax
movzx edx, byte [edi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
mov eax, 0x3d
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
cmp ecx, 0x74
je 0x1000aa08
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000ab5a
test byte [eax + 0x44], 2
je 0x1000ab20
mov edx, 0x7d
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000aafb
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x78], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
mov eax, 0x7d
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, 0x7d
push eax
movzx edx, byte [edi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
mov eax, 0x7d
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
cmp ecx, 0x74
je 0x10009df8
lea edx, [ebp + 0xc]
lea ecx, [ebp + 0x10]
lea eax, [ebp - 0x190]
lea ebx, [ebp - 0x280]
mov dword [ebp - 0x268], esi
mov esi, eax
mov dword [ebp - 0x26c], edi
mov edi, edx
push esi
push ebx
lea ecx, [ebp + 0x10]
push ecx
push edi
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x1000abf1
mov eax, dword [ebp - 0x278]
mov ecx, eax
and ecx, 0xfffffffd
cmp ecx, 0x40
je 0x1000abb4
cmp eax, 0x41
je 0x1000abb4
mov esi, dword [ebp - 0x268]
mov edi, dword [ebp - 0x26c]
movsx ecx, byte [esi + 0x6c]
jmp 0x10009e0b
mov edi, dword [ebp - 0x26c]
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000ac6e
test byte [edx + 0x44], 2
je 0x1000ac39
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000ac1c
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
cmp ecx, 0x74
je 0x1000acb4
cmp edx, 0x40
je 0x1000ab92
cmp edx, 0x42
je 0x1000aacd
jmp 0x10009df8
push 1
push 1
lea eax, [ebp - 0x280]
push eax
push edi
call fcn.10030880
add esp, 0x10
test eax, eax
jne 0x1000ae2d
xor edx, edx
mov eax, 1
mov dword [ebp - 0x268], esi
mov dword [ebp - 0x26c], edi
lea ebx, [ebp + 0x10]
mov esi, eax
mov edi, edx
mov ecx, dword [ebp + 0xc]
movsx eax, byte [ecx]
mov ecx, eax
and ecx, 0xfffffffd
cmp ecx, 0x40
je 0x1000ae27
cmp eax, 0x3f
je 0x1000ae27
and eax, 0xffffffbf
cmp eax, 1
jne 0x1000ad19
dec esi
test esi, esi
jg 0x1000ad19
mov edi, 1
lea ecx, [ebp - 0x190]
push ecx
lea ecx, [ebp - 0x280]
push ecx
push ebx
lea ecx, [ebp + 0xc]
push ecx
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x1000ad80
cmp dword [ebp - 0x278], 2
je 0x1000ad56
test edi, edi
je 0x1000acea
mov esi, dword [ebp - 0x268]
mov edi, dword [ebp - 0x26c]
jmp 0x1000a4a3
mov edi, dword [ebp - 0x26c]
or byte [edi + 0x19c], 0x20
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade
mov edi, dword [ebp - 0x26c]
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000adfd
test byte [edx + 0x44], 2
je 0x1000adc8
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000adab
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
inc esi
jmp 0x1000ad19
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
add dword [ebp + 0xc], 2
lea eax, [ebp - 0x190]
push eax
lea edx, [ebp - 0x280]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea ebx, [ebp + 0xc]
push ebx
call fcn.1002b860
add esp, 0x10
test eax, eax
je 0x10009c03
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000aeeb
test byte [edx + 0x44], 2
je 0x1000aeb6
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000ae99
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov eax, dword [esi + 0x14]
test eax, eax
lea edx, [eax + 1]
jne 0x1000af24
mov edx, 2
mov dword [esi + 0x14], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000afbb
test byte [edx + 0x44], 2
je 0x1000af86
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000af69
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edx
movzx eax, byte [edi + 0x194]
push edx
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push edx
push edx
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000b124
test byte [eax + 0x44], 2
je 0x1000b0ea
mov edx, 0x42
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000b0cd
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x78], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a992
mov eax, 0x42
push eax
movzx edx, byte [edi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
mov eax, 0x42
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov edx, dword [ebp + 0xc]
movsx edx, byte [edx]
cmp edx, 1
je 0x1000b418
cmp edx, 2
je 0x1000b3e7
test byte [esi + 0x72], 0x20
jne 0x1000b20e
mov ebx, dword [ebp - 0x25c]
test byte [edi + 0x190], 2
je 0x1000b1b7
test eax, 0x80
je 0x1000b1b7
push dword [ebp - 0x260]
lea eax, [ebp - 0x190]
push eax
lea edx, [ebp - 0x280]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea eax, [ebp + 0xc]
push eax
call fcn.1002bb10
add esp, 0x14
test eax, eax
jne 0x1000b2ed
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000b2be
test byte [eax + 0x44], 2
je 0x1000b284
mov edx, 0x69
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000b1e9
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x78], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
mov eax, 0x69
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [edi + 0xf0]
dec edx
mov ecx, dword [edi + 0x54]
mov eax, dword [edi + 0x114]
add eax, ecx
mov dword [edi + 0x4c], ecx
mov dword [edi + 0x54], eax
mov dword [edi + 0x58], ecx
mov dword [edi + 0xf0], edx
test edx, edx
jle 0x1000b32b
push dword [edi + 0x110]
push 0x20
push ecx
call fcn.10061620
push dword [ebp - 0x260]
lea eax, [ebp + 0x10]
push eax
lea edx, [ebp + 0xc]
push edx
call fcn.1002b760
add esp, 0x18
cmp eax, 1
jne 0x1000a4a3
and byte [edi + 0x199], 0x7f
mov dword [edi + 0x14c], 1
mov ebx, dword [ebp - 0x25c]
movzx eax, byte [esi + 0x73]
jmp 0x1000a4ba
mov eax, 0x69
push eax
movzx edx, byte [edi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
mov eax, 0x69
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov eax, dword [ebp + 0xc]
cmp byte [eax], 2
je 0x1000b2fe
movzx eax, byte [esi + 0x73]
jmp 0x1000a4ba
cmp dword [ebp - 0x260], 2
jge 0x1000b2f5
mov dword [esi + 0x14], 2
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000b3b8
test byte [eax + 0x44], 2
je 0x1000b37e
mov edx, 0x1b
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000b359
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x78], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
mov eax, 0x1b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, 0x1b
push eax
movzx edx, byte [edi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
mov eax, 0x1b
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
cmp dword [ebp - 0x260], 2
jge 0x1000b20e
mov dword [esi + 0x14], 2
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade
cmp dword [ebp - 0x260], 2
jge 0x1000b20e
mov ebx, dword [ebp - 0x25c]
jmp 0x1000a4ba
mov edx, dword [edi + 0xf0]
dec edx
mov ecx, dword [edi + 0x54]
mov eax, dword [edi + 0x114]
add eax, ecx
mov dword [edi + 0x4c], ecx
mov dword [edi + 0x54], eax
mov dword [edi + 0x58], ecx
mov dword [edi + 0xf0], edx
test edx, edx
jle 0x1000b46b
push dword [edi + 0x110]
push 0x20
push ecx
call fcn.10061620
add esp, 0xc
jmp 0x1000a4a3
mov eax, dword [edi + 0x20]
test eax, eax
je 0x1000b4ec
test byte [eax + 0x44], 2
je 0x1000b4b2
mov edx, 0x1b
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x78]
test edx, edx
je 0x1000b495
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x78], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000b371
mov eax, 0x1b
push eax
movzx edx, byte [edi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
mov eax, 0x1b
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov eax, dword [esi + 0x14]
test eax, eax
jbe 0x1000b526
inc eax
mov dword [esi + 0x14], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000b5ba
test byte [edx + 0x44], 2
je 0x1000b585
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000b568
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
cmp dword [ebp - 0x264], 0
jne 0x10009a53
cmp dword [ebp - 0x260], 1
jg 0x10009a53
or edx, 0x40
mov byte [esi + 0x73], dl
jmp 0x10009a59
cmp dword [ebp - 0x264], 0
jne 0x10009a43
cmp dword [ebp - 0x260], 1
jg 0x10009a43
movzx edx, byte [esi + 0x73]
or edx, 0x20
jmp 0x10009a4a
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x41
je 0x1000b686
mov dword [ebp - 0x268], esi
lea edx, [ebp + 0xc]
mov dword [ebp - 0x26c], edi
lea eax, [ebp + 0x10]
mov esi, eax
mov edi, edx
lea ebx, [ebp - 0x280]
lea ecx, [ebp - 0x190]
push ecx
push ebx
push esi
push edi
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x1000b6b5
cmp dword [ebp - 0x278], 2
je 0x1000b698
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x41
jne 0x1000b653
mov esi, dword [ebp - 0x268]
mov edi, dword [ebp - 0x26c]
add eax, 2
mov dword [ebp + 0xc], eax
and byte [edi + 0x19c], 0xdf
jmp 0x1000996f
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade
mov edi, dword [ebp - 0x26c]
mov edx, dword [edi + 0x20]
test edx, edx
je 0x1000b732
test byte [edx + 0x44], 2
je 0x1000b6fd
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x20]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x78]
test ecx, ecx
je 0x1000b6e0
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push eax
push eax
movzx eax, byte [edi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
push edi
push eax
push eax
push 1
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x1000a1b7
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1000a5d1
jmp 0x10009ade