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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x3ec
mov esi, dword [esp + 0x400]
mov word [esi + 0x8392], 1
mov ecx, esi
xor edx, edx
push 0
push 0xf
push 0x120
call fcn.00958cf0
add esp, 0xc
mov ecx, esi
mov edx, 1
push 0
push 0xf
push 0x20
call fcn.00958cf0
add esp, 0xc
lea eax, [esi + 0x8f12]
mov dword [esp + 0x64], eax
lea eax, [esi + 0x9032]
mov dword [esp + 0xec], eax
lea eax, [esi + 0x8612]
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], 0x11e
mov eax, 0xa7e681a0
jmp 0x9574d0
movzx ecx, byte [esp + 3]
mov dword [esp + 0x150], ecx
movzx ecx, bl
mov dword [esp + 0xd0], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x14], ecx
cmp eax, 0xffec68ac
jg 0x957550
cmp eax, 0xce90fd7c
jg 0x957620
cmp eax, 0xa9ffe0ed
jg 0x957696
cmp eax, 0x8a58a0c6
jle 0x95793b
cmp eax, 0xa46f8f35
jg 0x957b20
cmp eax, 0x9d242b69
jg 0x95823b
cmp eax, 0x8a58a0c7
je 0x9587ec
cmp eax, 0x933141ef
jne 0x9574d0
mov eax, dword [esp + 0x3c]
movzx eax, byte [eax + 0x992dea]
cmp byte [esi + eax + 0x9152], 0
mov eax, 0x293bef85
je 0x9574d0
mov eax, 0xf52eab4
jmp 0x9574d0
cmp eax, 0x4cc21d1a
jg 0x9575b0
cmp eax, 0x1d34e84c
jle 0x9576eb
cmp eax, 0x304ce16e
jle 0x9578a4
cmp eax, 0x3902156e
jg 0x957a95
cmp eax, 0x36881518
jg 0x95814b
cmp eax, 0x304ce16f
je 0x9586ba
cmp eax, 0x334d5ef1
jne 0x9574d0
mov eax, 0xcee82e82
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x28], ecx
jmp 0x9574d0
cmp eax, 0x6e5594a6
jle 0x95773f
cmp eax, 0x76a841d7
jle 0x9578ed
cmp eax, 0x7c4e280d
jg 0x957ae0
cmp eax, 0x7990d947
jg 0x95817a
cmp eax, 0x76a841d8
je 0x9586dd
cmp eax, 0x7985de72
jne 0x9574d0
mov dword [esp + 0xc0], 0
mov eax, 0x57e5a164
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x98], ecx
jmp 0x9574d0
cmp eax, 0xe16846ca
jle 0x9577b7
cmp eax, 0xee544c02
jle 0x957a39
cmp eax, 0xfaae786b
jg 0x957b73
cmp eax, 0xf3cc033f
jg 0x95829d
cmp eax, 0xee544c03
je 0x958880
cmp eax, 0xf330367a
jne 0x9574d0
inc word [esi + 0x8632]
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 0x16c], 0x10
mov eax, dword [esp + 4]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0xdc], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0xc786aa48
jmp 0x9574d0
cmp eax, 0xc43732b6
jle 0x9579d6
cmp eax, 0xc7c4d268
jle 0x957bb6
cmp eax, 0xcb0f783c
jg 0x95810d
cmp eax, 0xc7c4d269
je 0x958676
cmp eax, 0xc8afa863
jne 0x9574d0
inc word [esi + 0x8636]
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 0x16c], 0x12
mov eax, dword [esp + 8]
add al, 0xf5
jmp 0x9579be
cmp eax, 0x101ed7dd
jg 0x957803
cmp eax, 0x5c4d528
jle 0x957bec
cmp eax, 0xea6fe58
jg 0x957ec0
cmp eax, 0x5c4d529
je 0x958364
cmp eax, 0x6c4605d
jne 0x9574d0
movzx eax, byte [esi + 0x48]
mov edi, dword [esp + 0x130]
lea ecx, [edi + 1]
mov dword [esi + 0x30], ecx
mov byte [edi], al
mov eax, 0x80832398
jmp 0x9574d0
cmp eax, 0x62b3a5d1
jg 0x957841
cmp eax, 0x57e5a163
jle 0x957c3f
cmp eax, 0x5b1c1731
jg 0x957f0b
cmp eax, 0x57e5a164
je 0x95837d
cmp eax, 0x5a948812
jne 0x9574d0
mov eax, 0xfea801ce
mov ecx, dword [esp + 0x48]
cmp ecx, dword [esp + 0x160]
jb 0x95778d
mov eax, 0x166a76fb
mov bl, bh
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0xd8], ecx
jmp 0x9574d0
cmp eax, 0xd54ce32a
jg 0x957979
cmp eax, 0xd01ea970
jle 0x957d97
cmp eax, 0xd2b1f4c7
jg 0x958056
cmp eax, 0xd01ea971
je 0x958559
cmp eax, 0xd0827c73
jne 0x9574d0
mov eax, 0x101ed7de
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x5c], ecx
jmp 0x9574d0
cmp eax, 0x13952302
jle 0x957c82
cmp eax, 0x166a76fa
jg 0x957f41
cmp eax, 0x13952303
je 0x9583c3
cmp eax, 0x13a12bd8
jne 0x9574d0
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x1d34e84d
jmp 0x9574d0
cmp eax, 0x679c4774
jle 0x957cb5
cmp eax, 0x6aebd82d
jg 0x957f71
cmp eax, 0x679c4775
je 0x9583f3
cmp eax, 0x6a169a5a
jne 0x9574d0
mov ecx, dword [esp + 0xa0]
mov eax, 0xe584003c
sub ecx, 1
mov dword [esp + 0x14c], ecx
jb 0x95788a
mov eax, 0x2ce818a9
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0x108], ecx
jmp 0x9574d0
cmp eax, 0x293bef84
jle 0x957cee
cmp eax, 0x2bd32b7f
jg 0x957f99
cmp eax, 0x293bef85
je 0x95848e
cmp eax, 0x2ab564b9
jne 0x9574d0
movzx eax, byte [esi + 0x48]
mov edi, dword [esp + 0x124]
lea ecx, [edi + 1]
mov dword [esi + 0x30], ecx
mov byte [edi], al
mov eax, 0x705a5ee7
jmp 0x9574d0
cmp eax, 0x706a18d7
jle 0x957d29
cmp eax, 0x7476e9b2
jg 0x957fdf
cmp eax, 0x706a18d8
je 0x9584a1
cmp eax, 0x73c064b2
jne 0x9574d0
mov ecx, dword [esi + 0x30]
mov eax, 0xce90fd7d
mov dword [esp + 0x128], ecx
cmp ecx, dword [esi + 0x34]
jb 0x9574d0
mov eax, 0x129e1043
jmp 0x9574d0
cmp eax, 0x81935b6a
jle 0x957d5c
cmp eax, 0x86993c8a
jg 0x958017
cmp eax, 0x81935b6b
je 0x958508
cmp eax, 0x81961794
jne 0x9574d0
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x4e112e9c
jmp 0x9574d0
cmp eax, 0xdaa6b4c4
jle 0x957dd2
cmp eax, 0xdd42136d
jg 0x95807e
cmp eax, 0xdaa6b4c5
je 0x95856b
cmp eax, 0xdd350a77
jne 0x9574d0
inc word [esi + 0x8634]
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 0x16c], 0x11
mov eax, dword [esp + 8]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0x58], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x334d5ef1
jmp 0x9574d0
cmp eax, 0xb2615e11
jle 0x957e15
cmp eax, 0xbcb24de4
jg 0x9580bb
cmp eax, 0xb2615e12
je 0x9585b8
cmp eax, 0xb6697a41
jne 0x9574d0
inc word [esi + 0x8632]
mov edx, dword [esp + 0x14]
mov byte [esp + edx + 0x16c], 0x10
mov eax, dword [esp + 0xa4]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0xc4], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0xe584003c
jmp 0x9574d0
cmp eax, 0xe584003b
jle 0x957e81
cmp eax, 0xea6e8c92
jg 0x9580e4
cmp eax, 0xe584003c
je 0x95862f
cmp eax, 0xe675efe4
jne 0x9574d0
mov ecx, dword [esp + 0x10c]
lea eax, [ecx + 1]
mov dword [esp + 0xb4], eax
mov byte [esp + ecx + 0x16c], bl
mov eax, 0x7990d948
mov ecx, dword [esp + 0x158]
mov dword [esp + 0x88], ecx
jmp 0x9574d0
cmp eax, 0x3b41c197
jg 0x9581bf
cmp eax, 0x3902156f
je 0x9586fa
cmp eax, 0x3ae0e949
jne 0x9574d0
mov eax, dword [esp + 0x140]
lea ecx, [eax + 1]
mov dword [esp + 0x9c], ecx
mov byte [esp + eax + 0x16c], 0
mov eax, 0xb2615e12
mov ebp, dword [esp + 0x164]
jmp 0x9574d0
cmp eax, 0x7e5d7d68
jg 0x9581fa
cmp eax, 0x7c4e280e
je 0x958721
cmp eax, 0x7d0b8c9a
jne 0x9574d0
mov eax, dword [esp + 0x2c]
dec eax
mov ecx, dword [esp + 0x110]
shl eax, cl
or dword [esi + 0x48], eax
add dword [esi + 0x44], 5
mov eax, 0x38f32cb0
jmp 0x9574d0
cmp eax, 0xa7e6819f
jg 0x95827d
cmp eax, 0xa46f8f36
je 0x958806
cmp eax, 0xa754b6b0
jne 0x9574d0
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xa4]
add word [esi + eax*2 + 0x8612], dx
mov eax, 0x6a169a5a
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xa0], edx
jmp 0x9574d0
cmp eax, 0xfd5b7ceb
jg 0x9582e7
cmp eax, 0xfaae786c
je 0x95889a
cmp eax, 0xfb7b04f4
jne 0x9574d0
mov ecx, dword [esi + 0x30]
mov eax, 0x76a841d8
mov dword [esp + 0x11c], ecx
cmp ecx, dword [esi + 0x34]
jb 0x9574d0
mov eax, 0x13a12bd8
jmp 0x9574d0
cmp eax, 0xc7a4a228
jg 0x958327
cmp eax, 0xc43732b7
je 0x95834b
cmp eax, 0xc786aa48
jne 0x9574d0
mov eax, 0xcee82e82
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x28], ecx
jmp 0x9574d0
cmp eax, 0xffec68ad
je 0x9588f7
cmp eax, 0x263d7db
je 0x958a27
cmp eax, 0x588de24
jne 0x9574d0
mov eax, dword [esp + 0xd8]
inc eax
mov dword [esp + 0x48], eax
mov eax, 0x5a948812
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x6c], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x68], ecx
mov bh, byte [esp + 3]
jmp 0x9574d0
cmp eax, 0x4cc21d1b
je 0x9589b2
cmp eax, 0x4e112e9c
je 0x958a41
cmp eax, 0x56bd6457
jne 0x9574d0
mov ecx, dword [esi + 0x30]
mov eax, 0x2ab564b9
mov dword [esp + 0x124], ecx
cmp ecx, dword [esi + 0x34]
jb 0x9574d0
mov eax, 0x705a5ee7
jmp 0x9574d0
cmp eax, 0x101ed7de
je 0x9589e3
cmp eax, 0x10dca84e
je 0x958a63
cmp eax, 0x129e1043
jne 0x9574d0
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0xd2b1f4c8
jmp 0x9574d0
cmp eax, 0x62b3a5d2
je 0x958a0a
cmp eax, 0x62db2ca7
je 0x958a75
cmp eax, 0x664e650a
jne 0x9574d0
mov eax, 0xd0827c73
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0xe4], ecx
jmp 0x9574d0
cmp eax, 0x1d34e84d
je 0x958a87
cmp eax, 0x1e3707df
je 0x958add
cmp eax, 0x25bb672a
jne 0x9574d0
mov eax, 0xc7c4d269
cmp dword [esp + 8], 3
jb 0x9574d0
mov eax, 0xea6fe59
jmp 0x9574d0
cmp eax, 0x6e5594a7
je 0x958aa9
cmp eax, 0x7011356f
je 0x958af0
cmp eax, 0x705a5ee7
jne 0x9574d0
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x5c4d529
jmp 0x9574d0
cmp eax, 0x80038806
je 0x958b14
cmp eax, 0x80832398
je 0x958b45
cmp eax, 0x80b4b25b
jne 0x9574d0
mov eax, 0xcee82e82
cmp dword [esp + 8], 0
je 0x958071
mov eax, 0xaa49db00
jmp 0x958071
cmp eax, 0xce90fd7d
je 0x958b57
cmp eax, 0xcee82e82
je 0x958b96
cmp eax, 0xcf65576b
jne 0x9574d0
mov eax, 0xdd350a77
cmp dword [esp + 8], 0xb
jb 0x9574d0
mov eax, 0xc8afa863
jmp 0x9574d0
cmp eax, 0xd54ce32b
je 0x958b74
cmp eax, 0xd6f632a8
je 0x958bd3
cmp eax, 0xd85c7176
jne 0x9574d0
mov ecx, dword [esi + 0x30]
mov eax, 0xcb0f783d
mov dword [esp + 0x134], ecx
cmp ecx, dword [esi + 0x34]
jb 0x9574d0
mov eax, 0x6c58b3b0
jmp 0x9574d0
cmp eax, 0xa9ffe0ee
je 0x958c0a
cmp eax, 0xaa49db00
je 0x958c75
cmp eax, 0xb077d354
jne 0x9574d0
mov edi, ebp
mov ebp, dword [esp + 0xf0]
movzx edx, byte [esp + ebp + 0x16c]
movzx eax, word [esi + edx*2 + 0x8cd2]
mov ecx, dword [esi + 0x44]
shl eax, cl
mov dword [esp + 0xbc], edx
movzx edx, byte [esi + edx + 0x9152]
or dword [esi + 0x48], eax
add edx, ecx
lea eax, [ebp + 1]
mov ebp, edi
mov dword [esp + 0xb0], eax
mov dword [esi + 0x44], edx
mov eax, 0x1d34e84d
jmp 0x9574d0
cmp eax, 0xe16846cb
je 0x958c44
cmp eax, 0xe5363147
je 0x958c8f
cmp eax, 0xe54b0830
jne 0x9574d0
inc word [esi + 0x8634]
mov ecx, dword [esp + 0x54]
mov byte [esp + ecx + 0x16c], 0x11
mov eax, dword [esp + 0x18]
add al, 0xfd
jmp 0x958c5d
cmp eax, 0xea6fe59
je 0x958411
cmp eax, 0xf52eab4
jne 0x9574d0
mov ecx, dword [esp + 0x3c]
mov eax, ecx
cmp ecx, 4
jge 0x957ee6
mov eax, 3
lea ecx, [eax + 1]
mov dword [esp + 0x120], ecx
add eax, 0xfffffffd
mov ecx, dword [esi + 0x44]
shl eax, cl
or dword [esi + 0x48], eax
add ecx, 4
mov dword [esi + 0x44], ecx
mov eax, 0xd2b1f4c8
jmp 0x9574d0
cmp eax, 0x5b1c1732
je 0x95842b
cmp eax, 0x5c08a819
jne 0x9574d0
mov dword [esp + 0x94], 0
mov eax, 0xbcb24de5
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x78], ecx
jmp 0x9574d0
cmp eax, 0x166a76fb
je 0x958449
cmp eax, 0x18f44d18
jne 0x9574d0
mov eax, 0xe54b0830
cmp dword [esp + 0x18], 0xb
jb 0x9574d0
mov eax, 0xe16846cb
jmp 0x9574d0
cmp eax, 0x6aebd82e
je 0x958463
cmp eax, 0x6c58b3b0
jne 0x9574d0
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0xd54ce32b
jmp 0x9574d0
cmp eax, 0x2bd32b80
je 0x9584c2
cmp eax, 0x2ce818a9
jne 0x9574d0
mov ecx, dword [esp + 0x108]
lea eax, [ecx + 1]
mov dword [esp + 0xcc], eax
mov byte [esp + ecx + 0x16c], bl
mov eax, 0x6a169a5a
mov ecx, dword [esp + 0x14c]
mov dword [esp + 0xa0], ecx
jmp 0x9574d0
cmp eax, 0x7476e9b3
je 0x9584d4
cmp eax, 0x74a8506d
jne 0x9574d0
mov ecx, dword [esi + 0x30]
mov eax, 0xfd5b7cec
mov dword [esp + 0x138], ecx
cmp ecx, dword [esi + 0x34]
jb 0x9574d0
mov eax, 0x81961794
jmp 0x9574d0
cmp eax, 0x86993c8b
je 0x958528
cmp eax, 0x88404111
jne 0x9574d0
mov eax, 0xbcb24de5
cmp dword [esp + 4], 0
je 0x95803e
mov eax, 0x263d7db
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x94], ecx
jmp 0x9574d0
cmp eax, 0xd2b1f4c8
je 0x95858d
cmp eax, 0xd36d07f2
jne 0x9574d0
mov eax, 0xee544c03
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x28], ecx
jmp 0x9574d0
cmp eax, 0xdd42136e
je 0x9585a6
cmp eax, 0xdd777dee
jne 0x9574d0
mov eax, 0xe5363147
cmp dword [esp + 0xbc], 0x10
jae 0x9580a8
mov eax, 0xd0827c73
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xe4], ecx
jmp 0x9574d0
cmp eax, 0xbcb24de5
je 0x9585e7
cmp eax, 0xbfc4697a
jne 0x9574d0
mov eax, dword [esp + 0x2c]
dec eax
mov dword [esp + 0x50], eax
mov eax, 0x679c4775
jmp 0x9574d0
cmp eax, 0xea6e8c93
je 0x958654
cmp eax, 0xebf4b19a
jne 0x9574d0
mov eax, dword [esp + 0x7c]
inc eax
mov dword [esp + 0x38], eax
mov eax, 0x7011356f
jmp 0x9574d0
cmp eax, 0xcb0f783d
je 0x95869d
cmp eax, 0xcdd46493
jne 0x9574d0
movzx eax, bl
mov ecx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], cx
mov eax, 0x36881519
mov edx, dword [esp + 0xc]
mov dword [esp + 0x90], edx
mov dword [esp + 0x74], ecx
jmp 0x9574d0
cmp eax, 0x36881519
je 0x958755
cmp eax, 0x38f32cb0
jne 0x9574d0
cmp dword [esi + 0x44], 8
mov eax, 0xdaa6b4c5
jae 0x9574d0
mov eax, 0x2bd32b80
jmp 0x9574d0
cmp eax, 0x7990d948
je 0x958789
cmp eax, 0x7ad44816
jne 0x9574d0
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0xd0]
add word [esi + eax*2 + 0x8612], cx
mov eax, 0x7990d948
mov edx, dword [esp + 0x14]
mov dword [esp + 0xb4], edx
mov dword [esp + 0x88], ecx
jmp 0x9574d0
cmp eax, 0x3b41c198
je 0x9587c0
cmp eax, 0x422b1c78
jne 0x9574d0
mov dword [esp + 0x1c], 0
mov eax, 0x588de24
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x148]
mov dword [esp + 0x10], ecx
jmp 0x9574d0
cmp eax, 0x7e5d7d69
je 0x9587ca
cmp eax, 0x7e98cb0a
jne 0x9574d0
movzx eax, bl
mov ecx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], cx
mov eax, 0xd6f632a8
mov edx, dword [esp + 0xc]
mov dword [esp + 0xd4], edx
mov dword [esp + 0xc8], ecx
jmp 0x9574d0
cmp eax, 0x9d242b6a
je 0x958833
cmp eax, 0xa25c33ab
jne 0x9574d0
mov eax, 0xc43732b7
cmp dword [esp + 8], 0
je 0x958262
mov eax, 0x25bb672a
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 8]
mov dword [esp + 0xac], ecx
jmp 0x9574d0
cmp eax, 0xa7e681a0
je 0x95885f
cmp eax, 0xa84beb1e
jne 0x9574d0
mov eax, 0x18f44d18
jmp 0x9574d0
cmp eax, 0xf3cc0340
je 0x9588bc
cmp eax, 0xf97d374d
jne 0x9574d0
mov ecx, dword [esp + 0x80]
mov eax, 0x81935b6b
sub ecx, 1
mov dword [esp + 0x15c], ecx
jb 0x9582d0
mov eax, 0x86993c8b
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x44], ecx
jmp 0x9574d0
cmp eax, 0xfd5b7cec
je 0x9588da
cmp eax, 0xfea801ce
jne 0x9574d0
mov eax, dword [esp + 0xd8]
movzx ecx, byte [esp + eax + 0x2ac]
mov eax, 0x88404111
mov byte [esp + 3], cl
test cl, cl
je 0x9574d0
mov eax, 0xa25c33ab
jmp 0x9574d0
cmp eax, 0xc7a4a229
jne 0x958ccf
cmp dword [esi + 0x44], 8
mov eax, 0xea6e8c93
jae 0x9574d0
mov eax, 0x664e650a
jmp 0x9574d0
mov eax, 0xa9ffe0ee
cmp byte [esp + 3], bl
je 0x9574a4
mov eax, 0x9d242b6a
jmp 0x9574a4
cmp dword [esi + 0x44], 8
mov eax, 0x56bd6457
jae 0x9574d0
mov eax, 0xebf4b19a
jmp 0x9574d0
mov eax, dword [esp + 0x150]
inc word [esi + eax*2 + 0x8612]
mov ecx, dword [esp + 0x98]
lea eax, [ecx + 1]
mov dword [esp + 0x20], eax
movzx eax, byte [esp + 3]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x588de24
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0x10], ecx
jmp 0x9574d0
mov ecx, dword [esp + 0x104]
lea eax, [ecx + 1]
mov dword [esp + 0xd4], eax
mov byte [esp + ecx + 0x16c], bl
mov eax, 0xd6f632a8
mov ecx, dword [esp + 0x144]
mov dword [esp + 0xc8], ecx
jmp 0x9574d0
mov eax, 0x706a18d8
cmp dword [esp + 0x50], 2
jge 0x958404
mov eax, 0xffec68ad
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x2c], ecx
jmp 0x9574d0
mov eax, 0x4cc21d1b
cmp dword [esp + 8], 0xb
jb 0x9574d0
mov eax, 0xf3cc0340
jmp 0x9574d0
mov eax, 0x933141ef
cmp dword [esp + 0x60], 0
jns 0x95843c
mov eax, 0xf52eab4
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x3c], ecx
jmp 0x9574d0
mov eax, 0x80b4b25b
cmp dword [esp + 4], 0
je 0x9574d0
mov eax, 0xd36d07f2
jmp 0x9574d0
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 0x992dea]
movzx eax, byte [esi + eax + 0x9152]
mov ecx, dword [esi + 0x44]
shl eax, cl
or dword [esi + 0x48], eax
add ecx, 3
mov dword [esi + 0x44], ecx
mov eax, 0x5c4d529
jmp 0x9574d0
mov eax, dword [esp + 0x3c]
dec eax
mov dword [esp + 0x60], eax
mov eax, 0x5b1c1732
jmp 0x9574d0
mov eax, dword [esp + 0x2c]
cmp byte [eax + esi + 0x9031], 0
mov eax, 0xbfc4697a
je 0x9574d0
mov eax, 0xffec68ad
jmp 0x9574d0
mov dword [esp + 0x60], 0x12
mov eax, 0x5b1c1732
jmp 0x9574d0
mov ecx, dword [esp + 0xe0]
mov eax, 0x334d5ef1
sub ecx, 1
mov dword [esp + 0x13c], ecx
jb 0x9584f1
mov eax, 0x80038806
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x100], ecx
jmp 0x9574d0
mov dword [esp + 0xac], 0
mov eax, 0xc43732b7
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x84], ecx
jmp 0x9574d0
mov eax, dword [esp + 0x12c]
lea ecx, [eax + 1]
mov dword [esp + 0xa8], ecx
mov byte [esp + eax + 0x16c], 0
mov eax, 0xf97d374d
mov ecx, dword [esp + 0x15c]
mov dword [esp + 0x80], ecx
jmp 0x9574d0
mov dword [esp + 0x5c], 0
mov eax, 0x101ed7de
jmp 0x9574d0
mov ecx, dword [esi + 0x30]
mov eax, 0x6c4605d
mov dword [esp + 0x130], ecx
cmp ecx, dword [esi + 0x34]
jb 0x9574d0
mov eax, 0x80832398
jmp 0x9574d0
cmp dword [esi + 0x44], 8
mov eax, 0x73c064b2
jae 0x9574d0
mov eax, 0x10dca84e
jmp 0x9574d0
mov dword [esp + 0x50], 0x1e
mov eax, 0x679c4775
jmp 0x9574d0
mov ecx, ebp
mov eax, 0x422b1c78
sub ecx, 1
mov dword [esp + 0x164], ecx
jb 0x9585d0
mov eax, 0x3ae0e949
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x140], ecx
mov dword [esp + 0x40], ecx
jmp 0x9574d0
mov eax, dword [esp + 8]
lea ecx, [eax + 1]
mov eax, 0xa84beb1e
mov dword [esp + 0x18], ecx
cmp ecx, 0x8a
je 0x958604
mov eax, 0x588de24
mov edx, dword [esp + 0x78]
mov dword [esp + 0x20], edx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x148], ecx
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x10], ecx
jmp 0x9574d0
mov dword [esp + 0x10], 0
mov eax, 0x588de24
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x1c], ecx
jmp 0x9574d0
mov ecx, dword [esi + 0x30]
mov eax, 0x62b3a5d2
mov dword [esp + 0x118], ecx
cmp ecx, dword [esi + 0x34]
jb 0x9574d0
mov eax, 0x62db2ca7
jmp 0x9574d0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 8]
add word [eax], cx
mov eax, 0xf97d374d
mov edx, dword [esp + 0xc]
mov dword [esp + 0xa8], edx
mov dword [esp + 0x80], ecx
jmp 0x9574d0
movzx eax, byte [esi + 0x48]
mov edi, dword [esp + 0x134]
lea ecx, [edi + 1]
mov dword [esi + 0x30], ecx
mov byte [edi], al
mov eax, 0x6c58b3b0
jmp 0x9574d0
mov eax, dword [esp + 0x30]
add eax, 0xfffffeff
mov ecx, dword [esp + 0x114]
shl eax, cl
or dword [esi + 0x48], eax
add dword [esi + 0x44], 5
mov eax, 0xd54ce32b
jmp 0x9574d0
movzx eax, byte [esi + 0x48]
mov edx, dword [esp + 0x11c]
lea ecx, [edx + 1]
mov dword [esi + 0x30], ecx
mov byte [edx], al
mov eax, 0x13a12bd8
jmp 0x9574d0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 8]
add word [eax], cx
mov eax, 0x7476e9b3
mov edx, dword [esp + 0xc]
mov dword [esp + 0xe8], edx
mov dword [esp + 0xe0], ecx
jmp 0x9574d0
inc word [esi + 0x8632]
mov ecx, dword [esp + 0x14]
mov byte [esp + ecx + 0x16c], 0x10
mov eax, dword [esp + 4]
add al, 0xfd
lea edx, [ecx + 2]
mov dword [esp + 0xb8], edx
mov byte [esp + ecx + 0x16d], al
mov eax, 0x7985de72
jmp 0x9574d0
mov ecx, dword [esp + 0x74]
mov eax, 0x5c08a819
sub ecx, 1
mov dword [esp + 0x168], ecx
jb 0x95876f
mov eax, 0xa46f8f36
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x154], ecx
mov dword [esp + 0x8c], ecx
jmp 0x9574d0
mov ecx, dword [esp + 0x88]
mov eax, 0x7985de72
sub ecx, 1
mov dword [esp + 0x158], ecx
jb 0x9587a6
mov eax, 0xe675efe4
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0xb8], ecx
mov dword [esp + 0x10c], ecx
jmp 0x9574d0
mov eax, 0xb6697a41
jmp 0x9574d0
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x30]
cmp byte [ecx + eax - 1], 0
mov eax, 0x1e3707df
je 0x9574d0
mov eax, 0xdd42136e
jmp 0x9574d0
mov eax, 0x7ad44816
cmp dword [esp + 4], 3
jb 0x9574d0
mov eax, 0x7c4e280e
jmp 0x9574d0
mov eax, dword [esp + 0x154]
lea ecx, [eax + 1]
mov dword [esp + 0x90], ecx
mov byte [esp + eax + 0x16c], bl
mov eax, 0x36881519
mov ecx, dword [esp + 0x168]
mov dword [esp + 0x74], ecx
jmp 0x9574d0
mov eax, 0x57e5a164
cmp dword [esp + 4], 0
je 0x958844
mov eax, 0x8a58a0c7
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0xc0], ecx
jmp 0x9574d0
mov eax, 0x7e5d7d69
cmp dword [esp + 0x34], 0x102
jge 0x958873
mov eax, 0xdd42136e
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x30], ecx
jmp 0x9574d0
mov eax, 0x7e98cb0a
cmp dword [esp + 4], 3
jb 0x9574d0
mov eax, 0xf330367a
jmp 0x9574d0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
add word [eax], cx
mov eax, 0xb2615e12
mov edx, dword [esp + 0x54]
mov dword [esp + 0x9c], edx
mov ebp, ecx
jmp 0x9574d0
inc word [esi + 0x8636]
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 0x16c], 0x12
mov eax, dword [esp + 8]
add al, 0xf5
jmp 0x9589cb
movzx eax, byte [esi + 0x48]
mov edi, dword [esp + 0x138]
lea ecx, [edi + 1]
mov dword [esi + 0x30], ecx
mov byte [edi], al
mov eax, 0x81961794
jmp 0x9574d0
mov edi, dword [esp + 0x30]
push edi
push dword [esp + 0x68]
lea eax, [esp + 0x2b4]
push eax
call fcn.009597e0
add esp, 0xc
lea eax, [esp + edi]
add eax, 0x2ac
mov esi, dword [esp + 0x2c]
push esi
push dword [esp + 0xf0]
push eax
call fcn.009597e0
add esp, 0xc
lea eax, [esi + edi]
mov dword [esp + 0x160], eax
mov esi, dword [esp + 0x400]
mov eax, dword [esp + 0x24]
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x20], 0
mov word [eax + 0x24], 0
mov bh, 0xff
mov dword [esp + 0x48], 0
mov eax, 0x5a948812
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
jmp 0x9574d0
inc word [esi + 0x8634]
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 0x16c], 0x11
mov eax, dword [esp + 8]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0x44], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x81935b6b
jmp 0x9574d0
mov eax, 0xb077d354
mov ecx, dword [esp + 0xf4]
cmp dword [esp + 0x5c], ecx
jb 0x9589fa
mov eax, 0xc7a7efcb
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xf0], ecx
jmp 0x9574d0
movzx eax, byte [esi + 0x48]
mov edx, dword [esp + 0x118]
lea ecx, [edx + 1]
mov dword [esi + 0x30], ecx
mov byte [edx], al
mov eax, 0x62db2ca7
jmp 0x9574d0
mov eax, 0xcdd46493
cmp dword [esp + 4], 3
jb 0x9574d0
mov eax, 0x6e5594a7
jmp 0x9574d0
mov ecx, dword [esi + 0x44]
mov eax, 0x74a8506d
mov dword [esp + 0x114], ecx
cmp ecx, 8
jae 0x9574d0
mov eax, 0x304ce16f
jmp 0x9574d0
mov dword [esp + 0x38], 0
mov eax, 0x7011356f
jmp 0x9574d0
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0xc7a4a229
jmp 0x9574d0
mov ecx, dword [esi + 0x44]
mov eax, 0xfb7b04f4
mov dword [esp + 0xfc], ecx
cmp ecx, 8
jae 0x9574d0
mov eax, 0xdd777dee
jmp 0x9574d0
inc word [esi + 0x8632]
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 0x16c], 0x10
mov eax, dword [esp + 4]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0x8c], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x5c08a819
jmp 0x9574d0
mov eax, dword [esp + 0x30]
dec eax
mov dword [esp + 0x34], eax
mov eax, 0xa7e681a0
jmp 0x9574d0
mov eax, 0x6aebd82e
mov ecx, dword [esp + 0x120]
cmp dword [esp + 0x38], ecx
jl 0x958b07
mov eax, 0xd01ea971
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x7c], ecx
jmp 0x9574d0
mov ecx, dword [esp + 0x100]
lea eax, [ecx + 1]
mov dword [esp + 0xe8], eax
mov byte [esp + ecx + 0x16c], 0
mov eax, 0x7476e9b3
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0xe0], ecx
jmp 0x9574d0
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x38f32cb0
jmp 0x9574d0
movzx eax, byte [esi + 0x48]
mov edi, dword [esp + 0x128]
lea ecx, [edi + 1]
mov dword [esi + 0x30], ecx
mov byte [edi], al
mov eax, 0x129e1043
jmp 0x9574d0
mov ecx, dword [esi + 0x44]
mov eax, 0xd85c7176
mov dword [esp + 0x110], ecx
cmp ecx, 8
jae 0x9574d0
mov eax, 0x7d0b8c9a
jmp 0x9574d0
mov ecx, esi
mov edx, 2
push 0
push 7
push 0x13
call fcn.00958cf0
add esp, 0xc
mov ecx, dword [esi + 0x44]
mov eax, 2
shl eax, cl
or dword [esi + 0x48], eax
add ecx, 2
mov dword [esi + 0x44], ecx
mov eax, 0x4e112e9c
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xf4], ecx
jmp 0x9574d0
mov ecx, dword [esp + 0xc8]
mov eax, 0xc786aa48
sub ecx, 1
mov dword [esp + 0x144], ecx
jb 0x958bf0
mov eax, 0x13952303
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0x104], ecx
jmp 0x9574d0
mov eax, dword [esp + 4]
lea ecx, [eax + 1]
mov eax, 0x3b41c198
mov dword [esp + 0x10], ecx
cmp ecx, 6
je 0x958c24
mov eax, 0x588de24
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa4], ecx
jmp 0x9574d0
inc word [esi + 0x8636]
mov ecx, dword [esp + 0x54]
mov byte [esp + ecx + 0x16c], 0x12
mov eax, dword [esp + 0x18]
add al, 0xf5
lea edx, [ecx + 2]
mov dword [esp + 0x40], edx
mov byte [esp + ecx + 0x16d], al
mov eax, 0x422b1c78
jmp 0x9574d0
mov eax, 0x3902156f
cmp dword [esp + 8], 3
jb 0x9574d0
mov eax, 0xcf65576b
jmp 0x9574d0
mov edi, dword [esp + 0xb0]
movzx eax, byte [esp + edi + 0x16c]
mov edx, dword [esp + 0xbc]
movsx edx, byte [edx + 0x993bc4]
mov ecx, dword [esp + 0xfc]
shl eax, cl
or dword [esi + 0x48], eax
lea eax, [edi + 1]
mov dword [esp + 0xf8], eax
add dword [esi + 0x44], edx
mov eax, 0xc7a4a229
jmp 0x9574d0
cmp eax, 0xc7a7efcb
jne 0x9574d0
add esp, 0x3ec
pop esi
pop edi
pop ebx
pop ebp
ret