Function at 0x1261370
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa30
mov dword [esp + 0x38], edx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x588], 0x9fb399b5
mov dword [esp + 0x58c], 0xa3569d69
mov dword [esp + 0x590], 0xa74aa149
mov dword [esp + 0x594], 0xab5ea54d
mov dword [esp + 0x598], 0xaf83a951
mov dword [esp + 0x59c], 0xb347ad5b
mov dword [esp + 0x5a0], 0xb79bb156
mov dword [esp + 0x5a4], 0xbb43b540
mov dword [esp + 0x5a8], 0xbf5bb948
mov dword [esp + 0x5ac], 0x43b0bd81
mov dword [esp + 0x5b0], 0x47b241a5
mov dword [esp + 0x5b4], 0x4bb945bf
mov dword [esp + 0x5b8], 0x4fa149be
mov dword [esp + 0x5bc], 0x53bf4d7e
mov dword [esp + 0x5c0], 0x57b851a3
mov dword [esp + 0x5c4], 0x5bb755a7
mov dword [esp + 0x5c8], 0x5f8c596a
mov dword [esp + 0x5cc], 0x63965db9
mov dword [esp + 0x5d0], 0x6795619b
mov dword [esp + 0x5d4], 0x6b856592
mov dword [esp + 0x5d8], 0x6f8b69bf
mov dword [esp + 0x5dc], 0x73886d9a
mov dword [esp + 0x5e0], 0x77917199
mov dword [esp + 0x5e4], 0x7b7a7591
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x88]
cmp eax, 0x5f
ja 0x1261510
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x88]
movzx eax, byte [esp + eax + 0x588]
push dword [esp + 0x88]
push eax
call fcn.01262bc0
add esp, 8
mov ecx, dword [esp + 0x88]
mov byte [esp + ecx + 0x588], al
inc dword [esp + 0x88]
mov eax, dword [esp + 0x88]
cmp eax, 0x60
jb 0x12614d0
lea edi, [esp + 0x9cc]
lea eax, [esp + 0x588]
mov ecx, 0x18
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [esp + 0xa2c]
lea eax, [esp + 0x5e8]
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x588], 0x80b0a0d
mov byte [esp + 0x58c], 0
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x88]
cmp eax, 4
ja 0x12615b0
nop
nop
mov eax, dword [esp + 0x88]
movzx eax, byte [esp + eax + 0x588]
push dword [esp + 0x88]
push eax
call fcn.01262c40
add esp, 8
mov ecx, dword [esp + 0x88]
mov byte [esp + ecx + 0x588], al
inc dword [esp + 0x88]
mov eax, dword [esp + 0x88]
cmp eax, 5
jb 0x1261570
mov eax, dword [esp + 0x588]
mov ecx, dword [0x1296ec4]
test ecx, ecx
je 0x1261604
xor edx, edx
mov esi, dword [0x1296ec8]
nop
nop
nop
nop
nop
nop
nop
cmp dword [esi + edx*8], 0xcecd21fd
je 0x12615e0
inc edx
cmp ecx, edx
jne 0x12615d0
jmp 0x1261604
mov ecx, dword [esi + edx*8 + 4]
cmp ecx, eax
je 0x1261604
lea eax, [esp + 0x3c]
push eax
push 0
push 0
push 5
push 4
push dword [0x1296ecc]
push ecx
call fcn.01288190
add esp, 0x1c
cmp eax, 0xc0000004
jne 0x12616c0
push dword [esp + 0x3c]
call fcn.01284fe0
add esp, 4
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x588], 0x80b0a0d
mov byte [esp + 0x58c], 0
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x88]
cmp eax, 4
ja 0x1261690
nop
nop
nop
mov eax, dword [esp + 0x88]
movzx eax, byte [esp + eax + 0x588]
push dword [esp + 0x88]
push eax
call fcn.01262c40
add esp, 8
mov ecx, dword [esp + 0x88]
mov byte [esp + ecx + 0x588], al
inc dword [esp + 0x88]
mov eax, dword [esp + 0x88]
cmp eax, 5
jb 0x1261650
mov eax, dword [esp + 0x588]
mov ecx, dword [0x1296ec4]
test ecx, ecx
je 0x12616ff
xor edx, edx
mov edi, dword [0x1296ec8]
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0xcecd21fd
je 0x12616dd
inc edx
cmp ecx, edx
jne 0x12616b0
jmp 0x12616ff
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], 0
jmp 0x1261aaf
mov ecx, dword [edi + edx*8 + 4]
cmp ecx, eax
je 0x12616ff
push 0
push esi
push dword [esp + 0x20]
push 5
push 4
push dword [0x1296ecc]
push ecx
call fcn.01288190
add esp, 0x1c
test eax, eax
js 0x1261a8b
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov dword [esp + 0xc], 0
mov edi, ecx
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], 0
jmp 0x1261741
mov ecx, ebx
call fcn.01285440
mov eax, dword [edi]
test eax, eax
je 0x1261aa3
mov ecx, dword [edi + eax + 0x3c]
add edi, eax
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 8]
xor edx, edx
movzx esi, word [ecx + edx]
movzx ebx, word [eax + edx]
test si, si
je 0x1261765
add edx, 2
cmp si, bx
je 0x1261750
cmp si, bx
jne 0x1261737
mov eax, dword [edi + 0x44]
mov dword [esp + 0x2c], eax
mov eax, dword [edi + 0xdc]
mov dword [esp + 0x30], eax
lea ebx, [esp + 0x24]
mov ecx, ebx
push 0x410
call fcn.012852e0
test eax, eax
js 0x1261737
mov ecx, ebx
call fcn.01285920
cmp eax, 2
jne 0x1261a70
mov ecx, ebx
push 0
push 0x30
lea eax, [esp + 0x60]
push eax
push 0
call fcn.01285740
test eax, eax
js 0x1261a70
mov ecx, ebx
push 0
push 0
push 0x28
lea eax, [esp + 0x94]
push eax
push dword [esp + 0x74]
push dword [esp + 0x74]
call fcn.01285c50
test eax, eax
js 0x1261a70
mov ecx, ebx
push 0
push 0
push 0x80
lea eax, [esp + 0x594]
push eax
push dword [esp + 0xbc]
push dword [esp + 0xbc]
call fcn.01285c50
test eax, eax
js 0x1261a70
movzx eax, word [esp + 0x5fa]
push eax
call fcn.01284fe0
add esp, 4
mov esi, eax
movzx eax, word [esp + 0x5fa]
mov ecx, ebx
push 0
push 0
push eax
push esi
push dword [esp + 0x614]
push dword [esp + 0x614]
call fcn.01285c50
test eax, eax
js 0x1261a70
mov eax, esi
movzx esi, word [esp + 0x9cc]
mov dword [esp + 0x34], eax
mov dword [esp + 0x10], eax
test si, si
je 0x12618b7
lea ecx, [esp + 0x9cc]
mov edx, dword [esp + 0x34]
mov eax, edx
mov dword [esp + 0x10], edx
jmp 0x1261888
movzx esi, word [ecx]
test si, si
je 0x12618b7
movzx ebx, word [eax]
test bx, bx
je 0x1261a26
add eax, 2
add ecx, 2
mov edx, dword [esp + 0x10]
add edx, 2
cmp bx, si
je 0x12618ac
mov dword [esp + 0x10], edx
mov eax, edx
je 0x1261880
lea ecx, [esp + 0x9cc]
jmp 0x1261880
cmp dword [esp + 0x10], 0
je 0x1261a26
lea ebx, [esp + 0x24]
mov ecx, ebx
push 0
push 0
push 0x58
lea eax, [esp + 0x53c]
push eax
push dword [esp + 0xb4]
push dword [esp + 0xb4]
call fcn.01285c50
test eax, eax
js 0x1261a5a
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
add eax, 0x20
mov dword [esp + 0x10], eax
adc ecx, 0
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x540]
mov edx, dword [esp + 0x544]
mov dword [esp + 0x414], edx
mov dword [esp + 0x410], eax
mov dword [esp + 0x20], edi
jmp 0x126197b
movzx eax, dx
movzx ecx, bx
mov edx, eax
not edx
and edx, ecx
not ecx
and ecx, eax
cmp ecx, edx
lea ebx, [esp + 0x24]
je 0x1261a2c
push edi
call fcn.01285070
add esp, 4
mov eax, dword [esp + 0x410]
mov edx, dword [esp + 0x414]
mov ecx, edx
xor ecx, dword [esp + 0x40]
mov esi, eax
xor esi, dword [esp + 0x10]
or esi, ecx
mov edi, dword [esp + 0x20]
je 0x1261a5a
mov ecx, ebx
push 0
push 0
push 0x120
lea esi, [esp + 0x41c]
push esi
push edx
push eax
call fcn.01285c50
test eax, eax
js 0x1261a5a
movzx eax, word [esp + 0x46a]
push eax
call fcn.01284fe0
add esp, 4
mov edi, eax
movzx eax, word [esp + 0x46a]
mov ecx, ebx
push 0
push 0
push eax
push edi
push dword [esp + 0x484]
push dword [esp + 0x484]
call fcn.01285c50
test eax, eax
js 0x126194c
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0xc]
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, word [eax + ecx]
lea ebx, [edx - 0x41]
cmp bx, 0x1a
jae 0x1261a00
or edx, 0x20
movzx ebx, word [edi + ecx]
lea esi, [ebx - 0x41]
cmp si, 0x1a
jae 0x1261a10
or ebx, 0x20
test dx, dx
je 0x1261930
add ecx, 2
cmp dx, bx
je 0x12619f0
jmp 0x1261930
lea ebx, [esp + 0x24]
jmp 0x1261a70
mov eax, dword [esp + 0x440]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x444]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x450]
mov dword [esp + 0xc], eax
push edi
call fcn.01285070
add esp, 4
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x34]
push eax
call fcn.01285070
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x14]
or eax, dword [esp + 0x1c]
je 0x1261730
cmp dword [esp + 0xc], 0
je 0x1261730
jmp 0x1261aa3
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], 0
push dword [esp + 0x18]
call fcn.01285070
add esp, 4
lea esi, [esp + 0x24]
mov ecx, esi
call fcn.01285430
test al, al
je 0x1262631
mov eax, dword [esp + 0x14]
mov dword [esp + 0x530], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x534], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x538], eax
mov dword [esp + 0x588], 0x47464140
mov dword [esp + 0x58c], 0x4b4a4544
mov dword [esp + 0x590], 0x4f4e4948
mov dword [esp + 0x594], 0xb8b98687
mov dword [esp + 0x598], 0x77767170
mov dword [esp + 0x59c], 0x7b7a7574
mov dword [esp + 0x5a0], 0xb4b5b2b3
mov dword [esp + 0x5a4], 0x63627d7c
mov dword [esp + 0x5a8], 0x67666160
mov dword [esp + 0x5ac], 0x6b6a6564
mov dword [esp + 0x5b0], 0x6f6e6968
mov dword [esp + 0x5b4], 0x93926d6c
mov dword [esp + 0x5b8], 0x97969190
mov dword [esp + 0x5bc], 0x9b9a9594
mov dword [esp + 0x5c0], 0x9f9e9998
mov dword [esp + 0x5c4], 0x48495657
mov dword [esp + 0x5c8], 0x87868180
mov dword [esp + 0x5cc], 0x408a8584
mov dword [esp + 0x5d0], 0x448e8988
mov dword [esp + 0x5d4], 0xb3794647
mov dword [esp + 0x5d8], 0x7c7d7ab0
mov dword [esp + 0x5dc], 0xbbbab57f
mov dword [esp + 0x5e0], 0xbfbeb9b8
mov dword [esp + 0x5e4], 0xa3a2bdbc
mov dword [esp + 0x5e8], 0x6c6d6a6b
mov dword [esp + 0x5ec], 0xabaaa5a4
mov dword [esp + 0x5f0], 0xafaea963
mov dword [esp + 0x5f4], 0x18d2adac
mov dword [esp + 0x5f8], 0x1c1d1a1b
mov dword [esp + 0x5fc], 0xdb111e1f
mov dword [esp + 0x600], 0xdfded9d8
mov dword [esp + 0x604], 0x8091617
mov dword [esp + 0x608], 0xc7c6c1c0
mov dword [esp + 0x60c], 0xcbcac50f
mov byte [esp + 0x610], 0x40
mov byte [esp + 0x615], 0
mov dword [esp + 0x611], 0
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x88]
cmp eax, 0x8d
ja 0x1261cd2
nop
nop
nop
mov eax, dword [esp + 0x88]
movzx eax, byte [esp + eax + 0x588]
push dword [esp + 0x88]
push eax
call fcn.01262cc0
add esp, 8
mov ecx, dword [esp + 0x88]
mov byte [esp + ecx + 0x588], al
inc dword [esp + 0x88]
mov eax, dword [esp + 0x88]
cmp eax, 0x8e
jb 0x1261c90
mov dword [esp + 0x88], 0x682e3232
mov dword [esp + 0x8c], 0xb86bcd80
mov dword [esp + 0x90], 0x97bc6828
mov dword [esp + 0x94], 0x8b8a8d8c
mov dword [esp + 0x98], 0xff0a8a75
mov dword [esp + 0x9c], 0x9b937c3c
mov dword [esp + 0xa0], 0xfffe8180
mov dword [esp + 0xa4], 0x43ea0444
mov dword [esp + 0xa8], 0x54aec507
mov dword [esp + 0xac], 0xc7c6ca56
mov dword [esp + 0xb0], 0xdbdac5c4
mov dword [esp + 0xb4], 0xdfded9d8
mov dword [esp + 0xb8], 0x185e4242
mov dword [esp + 0xbc], 0x1a5aadf0
mov dword [esp + 0xc0], 0xa22959d2
mov dword [esp + 0xc4], 0xdbdadddc
mov dword [esp + 0xc8], 0x6ff68860
mov dword [esp + 0xcc], 0xd38e692d
mov dword [esp + 0xd0], 0xcf472468
mov dword [esp + 0xd4], 0x93cacdcc
mov dword [esp + 0xd8], 0xc7c6c9d0
mov dword [esp + 0xdc], 0x79357dc4
mov dword [esp + 0xe0], 0x8dc979a0
mov dword [esp + 0xe4], 0xd1cd8564
mov dword [esp + 0xe8], 0x37363938
mov dword [esp + 0xec], 0x6f8ec080
mov dword [esp + 0xf0], 0x5fd78830
mov dword [esp + 0xf4], 0x2bd01694
mov dword [esp + 0xf8], 0x27262928
mov dword [esp + 0xfc], 0x9b222524
mov dword [esp + 0x100], 0x721d27d9
mov dword [esp + 0x104], 0x1b1a1d1c
mov dword [esp + 0x108], 0x4ba2eea0
mov dword [esp + 0x10c], 0x3243ad14
mov byte [esp + 0x110], 0x10
mov byte [esp + 0x115], 0
mov dword [esp + 0x111], 0
mov dword [esp + 0x410], 0
mov eax, dword [esp + 0x410]
cmp eax, 0x8d
ja 0x1261ec2
nop
nop
nop
nop
mov eax, dword [esp + 0x410]
movzx eax, byte [esp + eax + 0x88]
push dword [esp + 0x410]
push eax
call fcn.01262d40
add esp, 8
mov ecx, dword [esp + 0x410]
mov byte [esp + ecx + 0x88], al
inc dword [esp + 0x410]
mov eax, dword [esp + 0x410]
cmp eax, 0x8e
jb 0x1261e80
lea edx, [esp + 0x88]
lea ecx, [esp + 0x530]
lea eax, [esp + 0x588]
push eax
push 0x88
push edx
push esi
call fcn.012869b0
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], eax
or eax, edx
je 0x1262631
lea eax, [esp + 0x50]
lea ecx, [esp + 0x530]
push 0
push 8
push eax
push esi
call fcn.012869b0
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], eax
or eax, edx
je 0x1262631
lea eax, [esp + 0x48]
lea edx, [esp + 0x58]
lea ecx, [esp + 0x24]
push 0
push 8
push eax
push edx
call fcn.01285e60
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x20], ecx
xor ebx, ebx
cmp eax, ecx
jne 0x1261f77
jmp 0x1262633
xor ebx, ebx
mov eax, dword [esp + 0x1c]
or al, bl
mov ebx, eax
push dword [esp + 0x14]
call fcn.01245860
add esp, 4
mov eax, dword [esp + 0x10]
add eax, 8
cmp eax, dword [esp + 0x20]
je 0x1262646
mov dword [esp + 0x1c], ebx
mov ebx, dword [eax]
mov dword [esp + 0x10], eax
mov esi, dword [eax + 4]
mov dword [esp + 0x18], ebx
add ebx, 0x30
mov edi, esi
adc edi, 0
call fcn.01245a20
mov dword [esp + 0x14], eax
push eax
call fcn.012453e0
add esp, 4
mov dword [esp + 0xc], eax
lea ecx, [esp + 0x24]
push 0
push 0
push 0x18
lea eax, [esp + 0x94]
push eax
push edi
push ebx
call fcn.01285c50
test eax, eax
js 0x1261f50
mov eax, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov ecx, eax
or ecx, edx
je 0x1261f50
lea ebx, [esp + 0x24]
mov ecx, ebx
push 0
push 0
push 0x40
lea edi, [esp + 0x594]
push edi
push edx
push eax
call fcn.01285c50
test eax, eax
js 0x1261f50
mov ecx, ebx
mov edx, edi
mov edi, dword [esp + 0xc]
push edi
call fcn.01262dd0
add esp, 4
test al, al
je 0x1261f50
push edi
call fcn.01245820
add esp, 4
test eax, eax
je 0x126213f
mov dword [esp + 0x424], 0
mov dword [esp + 0x420], 0
mov dword [esp + 0x41c], 0
mov dword [esp + 0x418], 0
mov dword [esp + 0x414], 0
mov dword [esp + 0x410], 0
mov edx, dword [esp + 0x18]
add edx, 0x158
adc esi, 0
lea edi, [esp + 0x24]
mov ecx, edi
push 0
push 0
push 8
lea eax, [esp + 0x594]
push eax
push esi
push edx
call fcn.01285c50
test eax, eax
js 0x1262115
mov eax, dword [esp + 0x588]
mov edx, dword [esp + 0x58c]
add eax, 0x28
adc edx, 0
mov ecx, edi
push 0
push 0
push 8
lea esi, [esp + 0x94]
push esi
push edx
push eax
call fcn.01285c50
test eax, eax
js 0x1262115
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x8c]
add eax, 0x10
adc edx, 0
mov ecx, edi
push 0
push 0
push 8
lea esi, [esp + 0xc]
push esi
push edx
push eax
call fcn.01285c50
test eax, eax
js 0x1262115
mov eax, dword [esp]
mov edx, dword [esp + 4]
add eax, 0x10
adc edx, 0
mov ecx, edi
push 0
push 0
push 0x18
lea esi, [esp + 0x41c]
push esi
push edx
push eax
call fcn.01285c50
movzx ebx, byte [esp + 0x427]
test bl, bl
jns 0x1262128
mov ebx, dword [esp + 0x418]
test ebx, ebx
je 0x1262146
mov esi, ebx
inc esi
jns 0x126220b
mov eax, 0xffffffff
jmp 0x1262212
mov bl, 1
jmp 0x1261f52
mov dword [esp + 0x88], 0x29982b6b
mov dword [esp + 0x8c], 0x2d9f2f8d
mov dword [esp + 0x90], 0x31803385
mov dword [esp + 0x94], 0x3582379f
mov dword [esp + 0x98], 0x393a3b85
mov byte [esp + 0x9c], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x14
ja 0x12621cc
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x88]
push dword [esp]
push eax
call fcn.012637c0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x88], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x15
jb 0x12621a0
movzx eax, word [esp + 0x88]
lea esi, [esp + 0x588]
mov ecx, esi
test ax, ax
je 0x1262201
lea edx, [esp + 0x8a]
mov ecx, esi
nop
nop
nop
nop
nop
mov word [ecx], ax
add ecx, 2
movzx eax, word [edx]
add edx, 2
test ax, ax
jne 0x12621f0
mov word [ecx], 0
jmp 0x1262473
lea eax, [ebx*2 + 2]
push eax
call fcn.0124d720
add esp, 4
mov edx, 2
sub edx, ebx
and edx, 2
mov ecx, esi
and ecx, 0xfffffffd
imul ecx, edx
mov edx, esi
and edx, 2
or esi, 2
imul esi, edx
add esi, ecx
mov ecx, edi
push 0
push 0
push esi
mov dword [esp + 0x18], eax
push eax
push dword [esp + 0x424]
push dword [esp + 0x424]
call fcn.01285c50
test eax, eax
js 0x1262467
mov dword [esp + 0x88], 0x89078b27
mov dword [esp + 0x8c], 0x85088733
mov dword [esp + 0x90], 0x815e8364
mov dword [esp + 0x94], 0x9d129f3f
mov dword [esp + 0x98], 0x993e9b23
mov word [esp + 0x9c], 0x9798
lea eax, [esp + 0x9e]
mov byte [eax + 4], 0
mov dword [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1a
ja 0x12622fc
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x88]
push dword [esp]
push eax
call fcn.01263750
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x88], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1b
jb 0x12622d0
movzx esi, word [esp + 0x88]
test si, si
je 0x1262351
lea ecx, [esp + 0x88]
mov eax, dword [esp + 0xc]
mov edx, eax
jmp 0x1262328
movzx esi, word [ecx]
test si, si
je 0x126235e
movzx edi, word [edx]
test di, di
je 0x1262467
add edx, 2
add ecx, 2
lea ebx, [eax + 2]
cmp di, si
je 0x1262346
mov eax, ebx
mov edx, ebx
je 0x1262320
lea ecx, [esp + 0x88]
jmp 0x1262320
mov eax, dword [esp + 0xc]
lea esi, [esp + 0x588]
jmp 0x126236d
test eax, eax
lea esi, [esp + 0x588]
je 0x1262467
movzx edx, word [eax + 0x14]
add eax, 0x14
xor ecx, ecx
test dx, dx
je 0x126239d
mov esi, eax
nop
nop
nop
cmp dx, 0x5c
je 0x1262394
movzx edx, word [esi + 2]
add esi, 2
test dx, dx
jne 0x1262380
jmp 0x1262396
mov ecx, esi
lea esi, [esp + 0x588]
mov edi, ecx
xor edi, eax
mov ebx, eax
not ebx
and ebx, ecx
add ebx, ebx
mov edx, esi
sub ebx, edi
je 0x1262462
sar ebx, 1
mov esi, ebx
and esi, 3
je 0x12623f3
mov dword [esp + 0x18], ebx
xor edi, edi
lea edx, [esp + 0x588]
nop
nop
nop
nop
nop
nop
nop
movzx ebx, word [eax]
xor ecx, ecx
test bx, bx
setne cl
lea eax, [eax + ecx*2]
mov word [edx], bx
add edx, 2
inc edi
cmp esi, edi
jne 0x12623d0
mov ebx, dword [esp + 0x18]
mov ecx, ebx
sub ecx, edi
jmp 0x12623fc
lea edx, [esp + 0x588]
mov ecx, ebx
dec ebx
cmp ebx, 3
jb 0x1262462
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [eax]
xor ebx, ebx
test si, si
setne bl
mov word [edx], si
lea esi, [eax + ebx*2]
movzx eax, word [eax + ebx*2]
xor ebx, ebx
test ax, ax
setne bl
mov word [edx + 2], ax
lea eax, [esi + ebx*2]
movzx esi, word [esi + ebx*2]
xor ebx, ebx
test si, si
setne bl
mov word [edx + 4], si
lea esi, [eax + ebx*2]
movzx edi, word [eax + ebx*2]
xor eax, eax
test di, di
setne al
lea eax, [esi + eax*2]
mov word [edx + 6], di
add edx, 8
add ecx, 0xfffffffc
jne 0x1262410
mov word [edx], 0
push dword [esp + 0xc]
call fcn.0124d730
add esp, 4
mov eax, dword [esp + 0x38]
mov edi, dword [eax]
mov eax, 0xfffffffe
nop
nop
cmp word [edi + eax + 2], 0
lea eax, [eax + 2]
jne 0x1262480
mov ecx, 0xfffffffe
cmp word [esp + ecx + 0x58a], 0
lea ecx, [ecx + 2]
jne 0x1262490
sar eax, 1
sar ecx, 1
lea edx, [eax + ecx]
add edx, 0xa
test edx, edx
jns 0x12624b3
mov eax, 0xffffffff
jmp 0x12624bc
add eax, ecx
lea eax, [eax*2 + 0x14]
push eax
call fcn.0124d720
add esp, 4
mov ebx, eax
movzx eax, word [edi]
mov esi, ebx
test ax, ax
je 0x12624f1
add edi, 2
mov esi, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [edi]
add edi, 2
test ax, ax
jne 0x12624e0
mov word [esi], 0x2f
mov dword [esp + 0x88], 0xe35ce1bf
mov dword [esp + 0x8c], 0xe771e541
mov dword [esp + 0x90], 0xdb4ed986
mov dword [esp + 0x94], 0xdf4add54
mov word [esp + 0x98], 0xd1d0
mov dword [esp + 0x9a], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x15
ja 0x126257c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x88]
push dword [esp]
push eax
call fcn.01263840
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x88], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x16
jb 0x1262550
add esi, 2
movzx eax, word [esp + 0x588]
test ax, ax
je 0x12625b1
lea ecx, [esp + 0x58a]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x12625a0
mov word [esi], 0
movzx eax, word [esp + 0x88]
test ax, ax
je 0x12625e1
lea ecx, [esp + 0x8a]
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x12625d0
mov word [esi], 0
mov edi, 0xffffffff
push dword [esp + 0x14]
call fcn.01246670
add esp, 4
mov esi, eax
nop
nop
nop
nop
nop
nop
nop
cmp byte [esi + edi + 1], 0
lea edi, [edi + 1]
jne 0x1262600
mov ecx, dword [esp + 0x44]
push edi
push esi
push ebx
call fcn.0124e410
mov edi, ebx
mov ebx, eax
push esi
call fcn.01246700
add esp, 4
push edi
call fcn.0124d730
add esp, 4
jmp 0x1261f52
xor ebx, ebx
lea ecx, [esp + 0x24]
call fcn.01285440
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
and bl, 1
mov eax, dword [esp + 0x58]
test eax, eax
je 0x1262633
cmp eax, dword [esp + 0x5c]
je 0x1262633
push eax
call fcn.0124d730
add esp, 4
jmp 0x1262633