Function at 0x1001f490
Capabilities:
Resolve function by parsing pe exports

Disassembly:
endbr32
push ebp
mov ebp, esp
push esi
push edi
push ebx
sub esp, 0x270
mov edi, dword [ebp + 8]
mov eax, dword [0x10234e38]
xor eax, ebp
mov esi, dword [edi + 4]
mov dword [ebp - 0x10], eax
test esi, esi
je 0x10021924
xor ecx, ecx
mov ebx, dword [esi + 0x6c]
mov dword [ebp - 0x21c], 1
mov dword [ebp - 0x220], ecx
mov dword [ebp - 0x228], ecx
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x218], ecx
mov dword [ebp - 0x214], ecx
mov dword [ebp - 0x224], edi
test byte [esi + 0x19c], 0x20
jne 0x100217f7
mov ecx, dword [ebx + 0x14]
cmp ecx, 1
jbe 0x1001f5a5
movzx edx, byte [ebx + 0x73]
lea eax, [ecx - 1]
mov dword [ebp - 0x22c], eax
mov dword [ebx + 0x14], eax
test dl, 0x10
je 0x1001f5fb
test dl, 0x20
je 0x1001f5fb
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x250], eax
movsx eax, byte [eax]
cmp eax, 0x41
jne 0x1001f54a
mov edx, dword [ebp - 0x250]
lea eax, [edx + 2]
mov dword [ebp + 0xc], eax
movsx eax, byte [eax]
movzx edx, byte [ebx + 0x73]
cmp eax, 2
je 0x100200eb
and edx, 0xffffffdf
cmp eax, 1
je 0x100200c6
and edx, 0xffffffbf
mov byte [ebx + 0x73], dl
push esi
mov dword [ebp - 0x24c], ecx
call fcn.1002cce0
mov ecx, dword [ebp - 0x24c]
add esp, 4
test eax, eax
jne 0x1002002d
movzx edx, byte [ebx + 0x73]
test dl, 0x10
je 0x1001f594
test dl, 0x20
jne 0x1002010d
mov eax, dword [ebp - 0x22c]
mov dword [ebx + 0x14], eax
or edx, 0x20
mov byte [ebx + 0x73], dl
jmp 0x1001f5fb
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x41
jne 0x1001f5b9
lea eax, [edx + 2]
mov dword [ebp + 0xc], eax
movsx eax, byte [eax]
cmp eax, 2
je 0x100217d1
movzx edx, byte [ebx + 0x73]
and edx, 0xffffffdf
cmp eax, 1
je 0x100217ac
and edx, 0xffffffbf
mov byte [ebx + 0x73], dl
push esi
call fcn.1002cce0
add esp, 4
test eax, eax
jne 0x1002170b
movzx edx, byte [ebx + 0x73]
test dl, 0x10
je 0x1001f5fb
test dl, 0x20
jne 0x100216e3
movsx eax, byte [ebx + 0x6c]
lea ecx, [eax - 0xf]
cmp ecx, 0xd
ja 0x1001f6e1
movzx eax, word [ecx*2 + 0x1020d6a0]
add eax, 0x1001f4eb
notrack jmp eax
cmp eax, 2
je 0x1001ff05
cmp dword [ebp - 0x21c], 1
jle 0x1001f788
mov eax, dword [ebp - 0x190]
add eax, 0xfffffff9
cmp eax, 1
ja 0x1001f75c
cmp dword [ebp - 0x220], 0
je 0x1001f72f
mov eax, dword [ebp - 0x23c]
add dword [ebp - 0x248], eax
dec dword [ebp - 0x21c]
mov dword [ebp - 0x220], 0
jmp 0x1001f970
xor eax, eax
cmp dword [ebp - 0x218], 0
lea edx, [ebp - 0x20c]
push edx
lea ecx, [ebp - 0x190]
push ecx
setne al
mov dword [edx - 0x14], eax
call fcn.1002db90
add esp, 8
mov dword [ebp - 0x248], eax
jmp 0x1001f77d
mov eax, dword [ebp - 0x220]
test eax, eax
mov edi, dword [ebp - 0x23c]
je 0x1001f771
mov eax, 0
add dword [ebp - 0x248], edi
mov dword [ebp - 0x220], eax
dec dword [ebp - 0x21c]
jmp 0x1001f963
lea eax, [ebp - 0x190]
push eax
lea edx, [ebp - 0x248]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea edi, [ebp + 0xc]
push edi
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x10021480
mov eax, dword [ebp - 0x240]
cmp eax, 2
je 0x10021451
cmp eax, 1
je 0x100201d0
cmp eax, 0x41
je 0x10021386
mov edx, dword [ebp - 0x190]
lea eax, [edx - 7]
cmp eax, 1
ja 0x1001f8d7
mov ecx, dword [ebp - 0x23c]
test ecx, ecx
je 0x1001f7fc
mov eax, dword [ebp - 0x244]
cdq
idiv ecx
mov dword [ebp - 0x21c], eax
jmp 0x1001f815
test byte [esi + 0x190], 2
je 0x1001f91a
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
je 0x1001f924
mov edx, dword [ebp - 0x240]
lea eax, [edx - 0x1c]
cmp eax, 0x10
jbe 0x1001f841
cmp edx, 0x34
je 0x1001f841
mov dword [ebp - 0x218], 0
jmp 0x1001f852
mov eax, 1
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x18c]
test eax, eax
jle 0x1001f8b6
mov edi, eax
shr edi, 1
je 0x10020701
xor ecx, ecx
mov dword [ebp - 0x234], esi
xor edx, edx
mov esi, dword [ebp + edx - 0x180]
mov dword [ebp + ecx*8 - 0x20c], esi
mov esi, dword [ebp + edx - 0x174]
add edx, 0x18
mov dword [ebp + ecx*8 - 0x208], esi
inc ecx
cmp ecx, edi
jb 0x1001f870
mov esi, dword [ebp - 0x234]
lea edx, [ecx + ecx + 1]
lea ecx, [edx - 1]
cmp ecx, eax
jae 0x1001f8b6
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 - 0x248], eax
jmp 0x1001f963
add edx, 0xfffffffb
cmp edx, 1
ja 0x1001f930
mov ecx, dword [ebp - 0x23c]
test ecx, ecx
je 0x1001f8fa
mov eax, dword [ebp - 0x244]
cdq
idiv ecx
mov dword [ebp - 0x21c], eax
jmp 0x1001f90f
test byte [esi + 0x190], 2
je 0x1001f91a
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
je 0x1001f924
jmp 0x1001f963
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x214], 1
jmp 0x1001f979
mov edx, dword [ebp - 0x240]
lea eax, [edx - 0x1c]
cmp eax, 0x10
jbe 0x1001f94f
cmp edx, 0x34
je 0x1001f94f
mov dword [ebp - 0x21c], 1
jmp 0x1001f963
mov dword [ebp - 0x21c], 2
mov dword [ebp - 0x220], 1
cmp dword [ebp - 0x210], 0
jne 0x1001fe4a
cmp dword [ebp - 0x214], 0
je 0x1001f995
mov eax, dword [ebx + 0x14]
test eax, eax
jne 0x1001f98c
mov dword [ebx + 0x14], 2
jmp 0x1001f4eb
inc eax
mov dword [ebx + 0x14], eax
jmp 0x1001f4eb
mov ecx, dword [ebp - 0x240]
mov eax, ecx
and eax, 0xfffffffd
movsx edx, byte [ebx + 0x6c]
cmp eax, 0x40
je 0x10021105
cmp ecx, 0x40
je 0x10020ff6
cmp ecx, 0x42
je 0x10020f31
lea eax, [ecx - 0x40]
add ecx, 0xffffffbe
or eax, ecx
je 0x1001f9d2
cmp edx, 0x74
je 0x10020e81
mov eax, dword [ebx]
and byte [ebx + 0x73], 0xf7
movzx ecx, byte [eax + 0x196]
test ecx, 0x80
je 0x1001fa0a
mov eax, dword [edx*4 + 0x10213fc0]
test eax, eax
je 0x1001fa0a
mov ecx, dword [ebp - 0x240]
movsx eax, byte [eax + ecx]
test eax, eax
je 0x1001fa0a
mov dword [ebp - 0x240], eax
movsx edx, byte [ebx + 0x6c]
lea eax, [edx - 0x13]
cmp eax, 0x1e
ja 0x1001fbdd
movzx eax, word [eax*2 + 0x1020d6bc]
add eax, 0x1001fa26
notrack jmp eax
mov eax, 0x3d
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [esi + 0x4c]
mov dword [ebp - 0x260], eax
cmp edx, 0x1d
je 0x1001fbfc
cmp edx, 0x13
je 0x1001fbfc
mov dword [ebp - 0x268], 1
jmp 0x1001fc06
mov dword [ebp - 0x268], 0
test byte [ebx + 0x75], 1
jne 0x1001fc21
cmp byte [esi + 0x189], 2
je 0x1001fc21
mov dword [ebp - 0x25c], 0x2c
jmp 0x1001fc2b
mov dword [ebp - 0x25c], 0x3b
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x258], eax
cmp dword [ebp - 0x268], 0
jne 0x1001fc64
mov edi, dword [ebp - 0x260]
mov ecx, dword [esi + 0x54]
mov edx, ecx
sub edx, edi
mov dword [ebp - 0x264], ecx
add edi, eax
cmp edi, ecx
jae 0x1001fc58
mov edx, eax
dec edx
mov dword [ebp - 0x26c], edx
jmp 0x1001fcf3
cmp dword [ebp - 0x258], 5
jle 0x1001fcd3
mov eax, dword [esi + 0x54]
mov dword [ebp - 0x264], eax
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x27c], eax
cmp eax, 5
jle 0x1001fce9
mov edi, dword [ebp - 0x260]
mov edx, dword [ebp - 0x258]
mov ecx, eax
lea eax, [edi + edx]
cmp eax, dword [ebp - 0x264]
jae 0x1001fca2
mov ecx, edx
dec ecx
mov dword [ebp - 0x27c], ecx
push ecx
push dword [ebp - 0x25c]
push edi
call fcn.101c8ba0
mov edx, eax
add esp, 0xc
sub edx, dword [ebp - 0x260]
test eax, eax
jne 0x1001fccb
mov edx, dword [ebp - 0x27c]
mov dword [ebp - 0x26c], edx
jmp 0x1001fcf3
cmp dword [ebp - 0x258], 0
jle 0x10020e6e
mov eax, dword [esi + 0x54]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0x260]
mov edx, dword [ebp - 0x26c]
mov edi, edx
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x234], esi
mov esi, dword [ebp - 0x258]
add eax, edx
mov ecx, dword [ebp - 0x264]
mov edx, dword [ebp - 0x25c]
mov ebx, dword [ebp - 0x268]
cmp eax, ecx
jae 0x10020a29
test ebx, ebx
je 0x1001fd3b
cmp dl, byte [eax]
je 0x10020774
inc edi
inc eax
cmp edi, esi
jl 0x1001fd27
mov dword [ebp - 0x26c], edi
mov ebx, dword [ebp - 0x230]
mov esi, dword [ebp - 0x234]
mov dword [ebp - 0x274], 0
mov dword [ebp - 0x270], 0
cmp dword [esi + 0x120], 0
jne 0x1001fd79
mov eax, dword [ebp - 0x26c]
mov dword [ebx + 0x5c], eax
mov ecx, dword [ebp - 0x274]
lea eax, [ebp - 0x248]
mov edx, dword [eax - 0x24]
push eax
push dword [ebp - 0x260]
mov eax, dword [eax - 0x28]
lea edi, [edx + ecx]
add eax, edi
push ebx
mov dword [ebp - 0x270], eax
add dword [esi + 0x124], eax
call fcn.1002e990
add esp, 0xc
test eax, eax
jne 0x10020845
mov eax, dword [ebp - 0x270]
add eax, dword [esi + 0x4c]
mov dword [ebp - 0x270], eax
mov dword [esi + 0x4c], eax
cmp dword [esi + 0x60], 0
je 0x10020836
mov eax, dword [esi + 0xac]
sub eax, dword [ebp - 0x26c]
mov edx, dword [esi + 0x64]
sub eax, dword [ebp - 0x274]
sub edx, dword [ebp - 0x270]
cmp eax, edx
je 0x1001fdf7
mov dword [esi + 0xac], edx
jmp 0x1001fdfd
mov dword [esi + 0xac], eax
cmp dword [esi + 0x120], 0
jne 0x1001fe0f
mov eax, dword [ebp - 0x258]
mov dword [ebx + 0x5c], eax
cmp dword [ebp - 0x228], 0
je 0x1001fe38
push dword [ebp - 0x278]
call fcn.10025800
add esp, 4
test eax, eax
jne 0x10020795
mov dword [ebp - 0x228], 0
test byte [esi + 0x19c], 2
je 0x1001f4eb
jmp 0x100201d0
mov ecx, dword [ebp - 0x240]
lea eax, [ecx - 5]
cmp eax, 0xc
ja 0x100212d6
mov edx, dword [esi + 0x54]
add ecx, 0xfffffffb
sub edx, dword [esi + 0x4c]
mov eax, edx
sar eax, 0x1f
not eax
and eax, edx
mov dword [ebp - 0x254], eax
cmp ecx, 0xc
ja 0x100212b9
movzx eax, byte [ecx + 0x1020d6fc]
add eax, 0x1001fe8c
notrack jmp eax
mov eax, dword [ebp + 0xc]
movsx eax, byte [eax]
cmp eax, 1
je 0x100216cb
cmp eax, 2
je 0x1002169a
test byte [ebx + 0x72], 0x20
jne 0x1001ffc1
mov edi, dword [ebp - 0x224]
test byte [esi + 0x190], 2
je 0x1001ff6a
test edx, 0x80
je 0x1001ff6a
push dword [ebp - 0x21c]
lea eax, [ebp - 0x190]
push eax
lea edx, [ebp - 0x248]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea eax, [ebp + 0xc]
push eax
call fcn.1002bb10
add esp, 0x14
test eax, eax
jne 0x1002158a
mov eax, dword [esi + 0x20]
test eax, eax
je 0x1002155b
test byte [eax + 0x44], 2
je 0x10021521
mov edx, 0x69
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x1001ff9c
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, 0x69
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push dword [ebp - 0x21c]
lea eax, [ebp + 0x10]
push eax
lea edx, [ebp + 0xc]
push edx
call fcn.1002b760
add esp, 0xc
cmp eax, 2
je 0x10021669
cmp eax, 1
je 0x100201d0
movzx eax, word [esi + 0x17a]
test eax, eax
jg 0x1001f4eb
xor eax, eax
push eax
push eax
push esi
call fcn.1003b5a0
add esp, 0xc
test eax, eax
jne 0x100215c8
add dword [esi + 0xb0], 1
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x58], eax
adc dword [esi + 0xb4], 0
and byte [esi + 0x197], 0xfb
jmp 0x1001f4eb
mov edx, dword [esi + 0x20]
test edx, edx
je 0x100200a0
test byte [edx + 0x44], 2
je 0x1002006f
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x10020052
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
je 0x10020239
call fcn.101a6152
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
cmp dword [ebp - 0x220], 0
jne 0x1001f55f
cmp dword [ebp - 0x21c], 1
jg 0x1001f55f
or edx, 0x40
mov byte [ebx + 0x73], dl
jmp 0x1001f565
cmp dword [ebp - 0x220], 0
jne 0x1001f553
cmp dword [ebp - 0x21c], 1
jg 0x1001f553
or edx, 0x20
jmp 0x1001f556
mov dword [ebx + 0x14], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edi, dword [ebp - 0x224]
movzx edx, byte [ebx + 0x73]
test dl, 2
je 0x10020248
push dword [ebx + 4]
and edx, 0xfffffffd
mov byte [ebx + 0x73], dl
call fcn.10025800
add esp, 4
test eax, eax
je 0x10020241
mov edx, dword [esi + 0x20]
test edx, edx
je 0x10020522
test byte [edx + 0x44], 2
je 0x100204ed
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x10020221
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov dword [ebx + 4], 0
and byte [esi + 0x194], 0xdc
and byte [esi + 0x196], 0xf7
mov eax, dword [esi + 0x90]
test eax, eax
je 0x10020673
cmp byte [eax + 0x1f], 0
jne 0x100202c4
mov ecx, dword [esi + 0x60]
test ecx, ecx
jne 0x10020274
mov ecx, dword [esi + 0x54]
mov dword [ebp - 0x224], edi
mov eax, ecx
mov edi, dword [esi + 0xd8]
sub edi, dword [esi + 0xe8]
mov ebx, dword [esi + 0xdc]
cdq
sbb ebx, dword [esi + 0xec]
mov eax, dword [esi + 0x48]
sub ecx, dword [esi + 0x48]
mov dword [ebp - 0x27c], edx
cdq
sbb dword [ebp - 0x27c], edx
add edi, ecx
mov dword [esi + 0xd0], edi
adc ebx, dword [ebp - 0x27c]
mov edi, dword [ebp - 0x224]
mov dword [esi + 0xd4], ebx
jmp 0x100202f3
mov ebx, dword [esi + 0xd8]
mov eax, dword [esi + 0x4c]
sub ebx, dword [esi + 0xe8]
mov ecx, dword [esi + 0xdc]
sbb ecx, dword [esi + 0xec]
sub eax, dword [esi + 0x48]
cdq
add ebx, eax
mov dword [esi + 0xd0], ebx
adc ecx, edx
mov dword [esi + 0xd4], ecx
cmp dword [ebp - 0x228], 0
je 0x1002035b
push dword [ebp - 0x278]
call fcn.10025800
add esp, 4
test eax, eax
je 0x1002035b
mov edx, dword [esi + 0x20]
test edx, edx
je 0x10020581
test byte [edx + 0x44], 2
je 0x1002054c
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x1002033b
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx eax, word [esi + 0x17a]
test eax, eax
jg 0x100203e8
mov eax, dword [esi + 0x90]
test eax, eax
je 0x100203e8
cmp byte [eax + 0x1f], 0
je 0x100203e8
test byte [esi + 0x196], 0x10
je 0x100203e8
movsx eax, byte [esi + 0x183]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x100204c8
movzx eax, byte [eax + 0x1020d70c]
add eax, 0x100203a5
notrack jmp eax
test byte [esi + 0x19c], 2
je 0x10020448
mov eax, dword [esi + 0x20]
test eax, eax
je 0x100205e5
test byte [eax + 0x44], 2
je 0x100205ab
mov edx, 0x10c
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10020423
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, 0x10c
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push dword [esi + 0x118]
call fcn.10026c60
add esp, 4
test eax, eax
je 0x100204a7
mov edx, dword [esi + 0x20]
test edx, edx
je 0x10020649
test byte [edx + 0x44], 2
je 0x10020614
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x10020487
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
xor eax, eax
mov dword [edi + 4], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
mov eax, 0x10c
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
mov eax, 0x10c
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 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
push eax
push eax
push 0
call fcn.10021950
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
movzx eax, word [esi + 0x17a]
test eax, eax
jle 0x1002026a
jmp 0x100202c4
mov edx, 1
jmp 0x1001f89e
mov dword [ebp - 0x26c], edi
mov ebx, dword [ebp - 0x230]
mov esi, dword [ebp - 0x234]
mov dword [ebp - 0x274], 1
jmp 0x1001fd5d
mov edx, dword [esi + 0x20]
test edx, edx
je 0x1002080c
test byte [edx + 0x44], 2
je 0x100207d7
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x100207ba
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
mov dword [esi + 0xac], 0
jmp 0x1001fdfd
mov dword [ebp - 0x27c], eax
movzx eax, word [esi + 0x17a]
mov ecx, edi
test eax, eax
jg 0x100208da
mov eax, dword [esi + 0x90]
test eax, eax
je 0x100208da
cmp byte [eax + 0x1f], 0
je 0x100208da
test byte [esi + 0x196], 0x10
je 0x100208da
movsx eax, byte [esi + 0x183]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x1002098a
movzx eax, byte [eax + str.55__]
add eax, 0x10020897
notrack jmp eax
mov eax, dword [esi + 0x4c]
add ecx, eax
mov dword [esi + 0x4c], ecx
cmp dword [esi + 0x60], 0
je 0x10020a1a
mov edx, dword [esi + 0xac]
sub edx, dword [ebp - 0x26c]
mov eax, dword [esi + 0x64]
sub edx, dword [ebp - 0x274]
sub eax, ecx
cmp edx, eax
je 0x1002090f
mov dword [esi + 0xac], eax
jmp 0x10020915
mov dword [esi + 0xac], edx
cmp dword [ebp - 0x228], 0
je 0x1002092c
push dword [ebp - 0x278]
call fcn.10025800
add esp, 4
push ebx
call fcn.1002b6e0
add esp, 4
mov eax, dword [esi + 0x20]
test eax, eax
je 0x100209ea
test byte [eax + 0x44], 2
je 0x100209af
mov edx, dword [ebp - 0x27c]
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10020964
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, dword [ebp - 0x27c]
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [ebp - 0x27c]
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
mov eax, dword [ebp - 0x27c]
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 0x1002006a
jmp 0x10020239
mov dword [esi + 0xac], 0
jmp 0x10020915
mov esi, dword [ebp - 0x234]
mov ebx, dword [ebp - 0x230]
mov dword [ebp - 0x26c], edi
test byte [esi + 0x196], 2
jne 0x10020a66
test byte [esi + 0x190], 2
jne 0x10020be6
mov eax, dword [esi + 0x90]
mov dword [ebp - 0x270], 1
jmp 0x10020b65
mov eax, dword [esi + 0x90]
test eax, eax
je 0x10020e43
cmp byte [eax + 0x1f], 0
je 0x10020a92
cmp dword [ebp - 0x26c], 0
jne 0x10020a92
mov dword [ebp - 0x270], 0
jmp 0x10020b6d
mov eax, dword [ebp - 0x258]
lea edx, [ebp - 0x278]
push edx
push 0
mov dword [edx + 0x50], eax
lea ecx, [eax + 1]
push ecx
call fcn.10025750
add esp, 0xc
test eax, eax
jne 0x10020da2
mov eax, dword [ebp - 0x278]
mov edx, dword [esi + 0x4c]
cmp eax, edx
ja 0x10020ad2
mov ecx, edi
lea edi, [ecx + eax]
cmp edi, edx
ja 0x10020adf
cmp eax, edx
jb 0x10020aee
mov ecx, dword [ebp - 0x26c]
lea edi, [ecx + edx]
cmp eax, edi
jae 0x10020aee
push dword [ebp - 0x26c]
push edx
push eax
call fcn.101ab790
jmp 0x10020afb
push dword [ebp - 0x26c]
push edx
push eax
call fcn.10061710
add esp, 0xc
mov edx, dword [ebp - 0x278]
mov eax, dword [ebp - 0x26c]
add edx, eax
neg eax
add eax, dword [ebp - 0x258]
push eax
push 0x20
push edx
call fcn.10061620
add esp, 0xc
mov edx, dword [ebp - 0x278]
mov eax, dword [ebp - 0x258]
mov edi, dword [ebp - 0x26c]
neg edi
mov byte [eax + edx], 0
mov eax, dword [esi + 0x120]
add eax, dword [ebx + 0x5c]
mov ecx, dword [ebp - 0x278]
add eax, edi
mov dword [esi + 0x120], eax
mov dword [ebp - 0x260], ecx
mov eax, dword [esi + 0x90]
mov dword [ebp - 0x270], 0
test eax, eax
je 0x10020d8e
cmp byte [eax + 0x1f], 0
je 0x10020b85
or byte [esi + 0x19c], 2
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x258], eax
jmp 0x10020b8e
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x274], 0
cmp dword [ebp - 0x270], 0
je 0x1001fd67
mov eax, dword [esi + 0x54]
mov edx, dword [esi + 0x4c]
mov dword [ebp - 0x270], eax
cmp eax, edx
jbe 0x10020bc2
sub eax, edx
mov dword [ebp - 0x270], eax
mov dword [ebx + 0x5c], eax
jmp 0x10020bd3
mov dword [ebx + 0x5c], 0
mov dword [ebp - 0x270], 0
xor eax, eax
mov dword [ebp - 0x26c], eax
mov dword [ebp - 0x274], eax
jmp 0x1001fd79
mov eax, dword [esi + 0x90]
test eax, eax
je 0x10020d7a
cmp byte [eax + 0x1f], 0
je 0x10020c51
mov eax, dword [esi + 0x20]
test eax, eax
je 0x10020ce2
test byte [eax + 0x44], 2
je 0x10020ca8
mov edx, 0x10c
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10020c2c
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, 0x10c
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [esi + 0x20]
test eax, eax
je 0x10020d4b
test byte [eax + 0x44], 2
je 0x10020d11
mov edx, 0x43
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10020c83
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, 0x43
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, 0x10c
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
mov eax, 0x10c
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 0x1002006a
jmp 0x10020239
mov eax, 0x43
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
mov eax, 0x43
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 0x1002006a
jmp 0x10020239
movzx eax, word [esi + 0x17a]
test eax, eax
jle 0x10020c51
jmp 0x10020bfa
movzx eax, word [esi + 0x17a]
test eax, eax
jle 0x10020b85
jmp 0x10020b73
mov edx, dword [esi + 0x20]
test edx, edx
je 0x10020e19
test byte [edx + 0x44], 2
je 0x10020de4
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x10020dc7
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
movzx eax, word [esi + 0x17a]
test eax, eax
jle 0x10020a92
cmp dword [ebp - 0x26c], 0
jne 0x10020a92
mov dword [ebp - 0x270], 0
jmp 0x10020b73
xor eax, eax
mov dword [ebp - 0x274], eax
mov dword [ebp - 0x26c], eax
jmp 0x1001fd5d
mov eax, dword [esi + 0x20]
test eax, eax
je 0x10020f02
test byte [eax + 0x44], 2
je 0x10020ec8
mov edx, 0x3d
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10020eab
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x1001fb96
mov eax, 0x3d
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
cmp edx, 0x74
je 0x10020e81
mov eax, dword [esi + 0x20]
test eax, eax
je 0x10020fc7
test byte [eax + 0x44], 2
je 0x10020f8d
mov edx, 0x7d
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10020f68
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
mov eax, 0x7d
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, 0x7d
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
cmp edx, 0x74
je 0x1001f9bf
lea edx, [ebp + 0xc]
lea ecx, [ebp + 0x10]
lea eax, [ebp - 0x190]
lea edi, [ebp - 0x248]
mov dword [ebp - 0x230], ebx
mov ebx, eax
mov dword [ebp - 0x234], esi
mov esi, edx
push ebx
push edi
lea ecx, [ebp + 0x10]
push ecx
push esi
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x1002105e
mov eax, dword [ebp - 0x240]
mov ecx, eax
and ecx, 0xfffffffd
cmp ecx, 0x40
je 0x10021021
cmp eax, 0x41
je 0x10021021
mov ebx, dword [ebp - 0x230]
mov esi, dword [ebp - 0x234]
movsx edx, byte [ebx + 0x6c]
jmp 0x1001f9d2
mov esi, dword [ebp - 0x234]
mov edx, dword [esi + 0x20]
test edx, edx
je 0x100210db
test byte [edx + 0x44], 2
je 0x100210a6
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x10021089
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
cmp edx, 0x74
je 0x10021121
cmp ecx, 0x40
je 0x10020fff
cmp ecx, 0x42
je 0x10020f3a
jmp 0x1001f9bf
xor eax, eax
lea edx, [ebp - 0x248]
push eax
push eax
push edx
push esi
call fcn.10030880
add esp, 0x10
test eax, eax
jne 0x1002129c
xor edx, edx
mov eax, 1
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x234], esi
lea edi, [ebp + 0x10]
mov ebx, eax
mov esi, edx
mov ecx, dword [ebp + 0xc]
movsx eax, byte [ecx]
mov ecx, eax
and ecx, 0xfffffffd
cmp ecx, 0x40
je 0x10021296
cmp eax, 0x3f
je 0x10021296
and eax, 0xffffffbf
cmp eax, 1
jne 0x10021186
dec ebx
test ebx, ebx
jg 0x10021186
mov esi, 1
lea ecx, [ebp - 0x190]
push ecx
lea ecx, [ebp - 0x248]
push ecx
push edi
lea ecx, [ebp + 0xc]
push ecx
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x100211ef
cmp dword [ebp - 0x240], 2
je 0x100211c5
test esi, esi
je 0x10021157
mov esi, esi
mov ebx, dword [ebp - 0x230]
mov esi, dword [ebp - 0x234]
jmp 0x1001f4eb
mov esi, dword [ebp - 0x234]
or byte [esi + 0x19c], 0x20
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128
mov esi, dword [ebp - 0x234]
mov edx, dword [esi + 0x20]
test edx, edx
je 0x1002126c
test byte [edx + 0x44], 2
je 0x10021237
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x1002121a
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
inc ebx
jmp 0x10021186
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x100204e0
mov eax, dword [esi + 0x20]
test eax, eax
je 0x10021357
test byte [eax + 0x44], 2
je 0x1002131d
mov edx, 0x3d
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10021300
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x78], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x1001fb96
mov eax, 0x3d
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
add dword [ebp + 0xc], 2
lea eax, [ebp - 0x190]
push eax
lea edx, [ebp - 0x248]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea edi, [ebp + 0xc]
push edi
call fcn.1002b860
add esp, 0x10
test eax, eax
je 0x1001f7cf
mov edx, dword [esi + 0x20]
test edx, edx
je 0x10021427
test byte [edx + 0x44], 2
je 0x100213f2
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x100213d5
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
mov eax, dword [ebx + 0x14]
test eax, eax
lea edx, [eax + 1]
jne 0x10021460
mov edx, 2
mov dword [ebx + 0x14], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128
mov edx, dword [esi + 0x20]
test edx, edx
je 0x100214f7
test byte [edx + 0x44], 2
je 0x100214c2
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x100214a5
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
mov eax, 0x69
push eax
movzx edx, byte [esi + 0x194]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
mov eax, dword [ebp + 0xc]
cmp byte [eax], 2
je 0x1002159b
movzx edx, byte [ebx + 0x73]
jmp 0x100201da
cmp dword [ebp - 0x21c], 2
jge 0x10021592
mov dword [ebx + 0x14], 2
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128
mov edx, dword [esi + 0x20]
test edx, edx
je 0x1002163f
test byte [edx + 0x44], 2
je 0x1002160a
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x100215ed
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
cmp dword [ebp - 0x21c], 2
jge 0x1001ffe9
mov dword [ebx + 0x14], 2
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128
cmp dword [ebp - 0x21c], 2
jge 0x1001ffc1
mov dword [ebx + 0x14], 2
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128
cmp dword [ebp - 0x21c], 2
jge 0x1001ffc1
mov edi, dword [ebp - 0x224]
jmp 0x100201da
mov eax, dword [ebx + 0x14]
test eax, eax
jbe 0x100216ee
inc eax
mov dword [ebx + 0x14], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128
mov edx, dword [esi + 0x20]
test edx, edx
je 0x10021782
test byte [edx + 0x44], 2
je 0x1002174d
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x10021730
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
cmp dword [ebp - 0x220], 0
jne 0x1001f5d2
cmp dword [ebp - 0x21c], 1
jg 0x1001f5d2
or edx, 0x40
mov byte [ebx + 0x73], dl
jmp 0x1001f5d8
cmp dword [ebp - 0x220], 0
jne 0x1001f5c2
cmp dword [ebp - 0x21c], 1
jg 0x1001f5c2
movzx edx, byte [ebx + 0x73]
or edx, 0x20
jmp 0x1001f5c9
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x41
je 0x1002184e
mov dword [ebp - 0x230], ebx
lea edx, [ebp + 0xc]
mov dword [ebp - 0x234], esi
lea eax, [ebp + 0x10]
mov ebx, eax
mov esi, edx
lea edi, [ebp - 0x248]
lea ecx, [ebp - 0x190]
push ecx
push edi
push ebx
push esi
call fcn.1002b860
add esp, 0x10
test eax, eax
jne 0x1002187d
cmp dword [ebp - 0x240], 2
je 0x10021860
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x41
jne 0x1002181b
mov ebx, dword [ebp - 0x230]
mov esi, dword [ebp - 0x234]
add eax, 2
mov dword [ebp + 0xc], eax
and byte [esi + 0x19c], 0xdf
jmp 0x1001f4f8
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128
mov esi, dword [ebp - 0x234]
mov edx, dword [esi + 0x20]
test edx, edx
je 0x100218fa
test byte [edx + 0x44], 2
je 0x100218c5
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x20]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x78]
test edx, edx
je 0x100218a8
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push eax
push eax
movzx eax, byte [esi + 0x194]
and eax, 7
push eax
push 0xffffffffffffffff
push esi
call fcn.1002c750
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020239
push esi
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 0x1002006a
jmp 0x10020239
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x10234e38]
jne 0x1002006a
jmp 0x10020128