Function at 0x10066f90
Capabilities:
Encode data using xor
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x150
mov esi, esp
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x13c], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x140], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x144], eax
mov eax, dword [0x100db8d8]
xor eax, ebp
mov dword [esi + 0x148], eax
cmp dword [0x100dc4b0], 0
jne 0x1006765a
mov al, byte [0x100d9152]
xor al, 0x98
mov byte [str.e_f_], al
mov al, byte [0x100d9153]
xor al, 0x95
mov byte [0x100d915f], al
mov al, byte [0x100d9154]
xor al, 0x60
mov byte [0x100d9160], al
mov al, byte [0x100d9155]
xor al, 0xcf
mov byte [0x100d9161], al
mov al, byte [0x100d9156]
xor al, 0xfe
mov byte [0x100d9162], al
mov al, byte [0x100d9157]
xor al, 0x71
mov byte [0x100d9163], al
mov al, byte [0x100d9158]
xor al, 0x76
mov byte [0x100d9164], al
mov al, byte [0x100d9159]
xor al, 0xe2
mov byte [0x100d9165], al
mov al, byte [0x100d915a]
xor al, 0x68
mov byte [0x100d9166], al
mov al, byte [0x100d915b]
xor al, 0x15
mov byte [0x100d9167], al
mov al, byte [0x100d915c]
xor al, 0xca
mov byte [0x100d9168], al
mov al, byte [0x100d91c0]
xor al, 0xbc
mov byte [0x100d91cc], al
mov al, byte [0x100d91c1]
xor al, 0xce
mov byte [0x100d91cd], al
mov al, byte [0x100d91c2]
xor al, 0xd7
mov byte [0x100d91ce], al
mov al, byte [0x100d91c3]
xor al, 0xc3
mov byte [0x100d91cf], al
mov al, byte [0x100d91c4]
xor al, 0x5d
mov byte [0x100d91d0], al
mov al, byte [0x100d91c5]
xor al, 0xeb
mov byte [0x100d91d1], al
mov al, byte [0x100d91c6]
xor al, 0x58
mov byte [0x100d91d2], al
mov al, byte [0x100d91c7]
xor al, 0x70
mov byte [0x100d91d3], al
mov al, byte [0x100d91c8]
xor al, 0x11
mov byte [0x100d91d4], al
mov al, byte [0x100d91c9]
xor al, 0xff
mov byte [0x100d91d5], al
mov al, byte [0x100d91ca]
xor al, 0xe5
mov byte [0x100d91d6], al
mov al, byte [0x100d91cb]
xor al, 0xf6
mov byte [0x100d91d7], al
mov al, byte [0x100d9197]
xor al, 0xb9
mov byte [0x100d91a2], al
mov al, byte [0x100d9198]
xor al, 0x47
mov byte [0x100d91a3], al
mov al, byte [0x100d9199]
xor al, 0x69
mov byte [0x100d91a4], al
mov al, byte [0x100d919a]
xor al, 0x48
mov byte [0x100d91a5], al
mov al, byte [0x100d919b]
xor al, 0x92
mov byte [0x100d91a6], al
mov al, byte [0x100d919c]
xor al, 0xed
mov byte [0x100d91a7], al
mov al, byte [0x100d919d]
xor al, 0xb9
mov byte [0x100d91a8], al
mov al, byte [0x100d919e]
xor al, 0xc3
mov byte [0x100d91a9], al
mov al, byte [0x100d919f]
xor al, 0xf8
mov byte [0x100d91aa], al
mov al, byte [0x100d91a0]
xor al, 0xd7
mov byte [0x100d91ab], al
mov al, byte [0x100d910b]
xor al, 0xbc
mov byte [0x100d9114], al
mov al, byte [0x100d910c]
xor al, 0x6f
mov byte [0x100d9115], al
mov al, byte [0x100d910d]
xor al, 0xc1
mov byte [0x100d9116], al
mov al, byte [0x100d910e]
xor al, 0xde
mov byte [0x100d9117], al
mov al, byte [0x100d910f]
xor al, 0x88
mov byte [0x100d9118], al
mov al, byte [0x100d9110]
xor al, 0xcb
mov byte [0x100d911a], al
mov al, byte [0x100d9111]
xor al, 0x5c
mov byte [0x100d911b], al
mov al, byte [0x100d9112]
xor al, 0xfc
mov byte [0x100d911c], al
mov al, byte [0x100d9113]
xor al, 0xa5
mov byte [0x100d911d], al
mov al, byte [0x100d9207]
xor al, 0x4e
mov byte [0x100d920e], al
mov al, byte [0x100d9208]
xor al, 9
mov byte [0x100d920f], al
mov al, byte [0x100d9209]
xor al, 0x95
mov byte [0x100d9210], al
mov al, byte [0x100d920a]
xor al, 0x3b
mov byte [0x100d9211], al
mov al, byte [0x100d920b]
xor al, 0x33
mov byte [0x100d9213], al
mov al, byte [0x100d920c]
xor al, 0x22
mov byte [0x100d9214], al
mov al, byte [0x100d920d]
xor al, 0xd9
mov byte [0x100d9215], al
mov al, byte [0x100d91f9]
xor al, 0xe3
mov byte [0x100d91ff], al
mov al, byte [0x100d91fa]
xor al, 0xa0
mov byte [0x100d9200], al
mov al, byte [0x100d91fb]
xor al, 0xe2
mov byte [0x100d9203], al
mov al, byte [0x100d91fc]
xor al, 0xfb
mov byte [0x100d9204], al
mov al, byte [str.JL_l.h]
xor al, 0x2d
mov byte [0x100d9205], al
mov al, byte [0x100d91fe]
xor al, 0x4c
mov byte [0x100d9206], al
mov al, byte [str.R__4]
xor al, 0x21
mov byte [0x100d91e9], al
mov al, byte [0x100d91e4]
xor al, 0x42
mov byte [0x100d91eb], al
mov al, byte [0x100d91e5]
xor al, 0x55
mov byte [0x100d91ec], al
mov al, byte [0x100d91e6]
xor al, 0x51
mov byte [0x100d91ed], al
mov al, byte [0x100d91e7]
xor al, 0xd6
mov byte [0x100d91ee], al
mov al, byte [0x100d91e8]
xor al, 0x56
mov byte [0x100d91ef], al
mov al, byte [0x100d9183]
xor al, 0xdc
mov byte [0x100d918d], al
mov al, byte [0x100d9184]
xor al, 0xf1
mov byte [0x100d918e], al
mov al, byte [0x100d9185]
xor al, 0xf1
mov byte [0x100d918f], al
mov al, byte [0x100d9186]
xor al, 0xe3
mov byte [0x100d9190], al
mov al, byte [0x100d9187]
xor al, 0x20
mov byte [0x100d9191], al
mov al, byte [0x100d9188]
xor al, 0x21
mov byte [0x100d9192], al
mov al, byte [0x100d9189]
xor al, 0xad
mov byte [0x100d9193], al
mov al, byte [0x100d918a]
xor al, 0x20
mov byte [0x100d9194], al
mov al, byte [0x100d918b]
xor al, 0xa1
mov byte [0x100d9195], al
mov al, byte [0x100d918c]
xor al, 0x46
mov byte [0x100d9196], al
mov al, byte [0x100d91d8]
xor al, 0xbe
mov byte [0x100d91dd], al
mov al, byte [0x100d91d9]
xor al, 0xe4
mov byte [0x100d91de], al
mov al, byte [0x100d91da]
xor al, 0xad
mov byte [0x100d91df], al
mov al, byte [0x100d91db]
xor al, 0x2b
mov byte [0x100d91e0], al
mov al, byte [0x100d91dc]
xor al, 0x8b
mov byte [0x100d91e1], al
mov al, byte [0x100d91f0]
xor al, 0xd5
mov byte [0x100d91f4], al
mov al, byte [0x100d91f1]
xor al, 0xab
mov byte [0x100d91f5], al
mov al, byte [0x100d91f2]
xor al, 0x87
mov byte [0x100d91f6], al
mov al, byte [0x100d91f3]
xor al, 0x1b
mov byte [0x100d91f7], al
mov al, byte [0x100d9120]
xor al, 0xef
mov byte [0x100d9140], al
mov al, byte [0x100d9121]
xor al, 0x5c
mov byte [0x100d9141], al
mov al, byte [0x100d9122]
xor al, 0x51
mov byte [0x100d9142], al
mov al, byte [0x100d9123]
xor al, 0xe3
mov byte [0x100d9143], al
mov al, byte [0x100d9124]
xor al, 0xd5
mov byte [0x100d9144], al
mov al, byte [0x100d9125]
xor al, 0x75
mov byte [0x100d9145], al
mov al, byte [0x100d9126]
xor al, 0x43
mov byte [0x100d9146], al
mov al, byte [0x100d9127]
xor al, 0xbd
mov byte [0x100d9147], al
mov al, byte [0x100d9128]
xor al, 0x3f
mov byte [0x100d9148], al
mov al, byte [0x100d9129]
xor al, 0x31
mov byte [0x100d9149], al
mov al, byte [0x100d912a]
xor al, 0xf6
mov byte [0x100d914a], al
mov al, byte [0x100d912b]
xor al, 0x89
mov byte [0x100d914b], al
mov al, byte [0x100d912c]
xor al, 0x49
mov byte [0x100d914c], al
mov al, byte [0x100d912d]
xor al, 0xe1
mov byte [str.PU3_r], al
mov al, byte [0x100d912e]
xor al, 0x79
mov byte [0x100d914e], al
mov al, byte [0x100d912f]
xor al, 0x82
mov byte [0x100d914f], al
mov al, byte [0x100d9130]
xor al, 0x1a
mov byte [0x100d9150], al
mov al, byte [0x100d9131]
xor al, 6
mov byte [0x100d9151], al
mov al, byte [0x100d9169]
xor al, 0xe1
mov byte [0x100d9176], al
mov al, byte [0x100d916a]
xor al, 0xc0
mov byte [0x100d9177], al
mov al, byte [0x100d916b]
xor al, 0x49
mov byte [0x100d9178], al
mov al, byte [0x100d916c]
xor al, 0x81
mov byte [0x100d9179], al
mov al, byte [0x100d916d]
xor al, 0x8f
mov byte [0x100d917a], al
mov al, byte [0x100d916e]
xor al, 0xdb
mov byte [0x100d917b], al
mov al, byte [0x100d916f]
xor al, 0x7c
mov byte [0x100d917c], al
mov al, byte [0x100d9170]
xor al, 0xee
mov byte [0x100d917d], al
mov al, byte [0x100d9171]
xor al, 0x4c
mov byte [0x100d917e], al
mov al, byte [0x100d9172]
xor al, 0x6a
mov byte [0x100d917f], al
mov al, byte [0x100d9173]
xor al, 0x57
mov byte [0x100d9180], al
mov al, byte [0x100d9174]
xor al, 0x9d
mov byte [0x100d9181], al
mov al, byte [0x100d9175]
xor al, 0xd3
mov byte [0x100d9182], al
mov al, byte [0x100d9104]
xor al, 0x57
mov byte [0x100d9108], al
mov al, byte [0x100d9105]
xor al, 0x79
mov byte [0x100d9109], al
mov al, byte [0x100d9106]
xor al, 0x10
mov byte [0x100d910a], al
mov al, byte [0x100d91ac]
xor al, 0xb0
mov byte [0x100d91b5], al
mov al, byte [0x100d91ad]
xor al, 0x68
mov byte [0x100d91b6], al
mov al, byte [0x100d91ae]
xor al, 0x18
mov byte [0x100d91b7], al
mov al, byte [0x100d91af]
xor al, 0x9a
mov byte [0x100d91b9], al
mov al, byte [0x100d91b0]
xor al, 0x9b
mov byte [0x100d91bb], al
mov al, byte [0x100d91b1]
xor al, 0x77
mov byte [0x100d91bc], al
mov al, byte [0x100d91b2]
xor al, 0x40
mov byte [0x100d91bd], al
mov al, byte [0x100d91b3]
xor al, 0x97
mov byte [0x100d91be], al
mov al, byte [0x100d91b4]
xor al, 0x32
mov byte [0x100d91bf], al
mov al, byte [0x100d9216]
xor al, 0xe4
mov byte [0x100d921b], al
mov al, byte [0x100d9217]
xor al, 0xb7
mov byte [0x100d921c], al
mov al, byte [0x100d9218]
xor al, 0x9f
mov byte [0x100d921d], al
mov al, byte [0x100d9219]
xor al, 3
mov byte [0x100d921e], al
mov al, byte [0x100d921a]
xor al, 0x3a
mov byte [0x100d921f], al
mov al, byte [0x100d9220]
xor al, 0xef
mov byte [0x100d922b], al
mov al, byte [0x100d9221]
xor al, 0xc9
mov byte [0x100d922c], al
mov al, byte [0x100d9222]
xor al, 0x95
mov byte [0x100d922d], al
mov al, byte [0x100d9223]
xor al, 0x32
mov byte [0x100d922e], al
mov al, byte [0x100d9224]
xor al, 0x9f
mov byte [0x100d922f], al
mov al, byte [0x100d9225]
xor al, 0x76
mov byte [0x100d9230], al
mov al, byte [0x100d9226]
xor al, 3
mov byte [0x100d9231], al
mov al, byte [0x100d9227]
xor al, 0xe9
mov byte [0x100d9232], al
mov al, byte [0x100d9228]
xor al, 0xee
mov byte [0x100d9233], al
mov al, byte [0x100d9229]
xor al, 0x45
mov byte [0x100d9235], al
mov al, byte [0x100d922a]
xor al, 0xe4
mov byte [0x100d9236], al
mov dword [0x100dc4b0], 1
push eax
mov eax, esp
mov dword [esi + 0x40], eax
push eax
mov ecx, esp
mov eax, ecx
mov dword [esi + 0x44], eax
push eax
mov eax, esp
mov dword [esi + 0x110], eax
mov dword [esi + 0x48], eax
push eax
mov ebx, esp
mov eax, ebx
mov dword [esi + 0x4c], eax
sub esp, 0x10
mov edi, esp
mov eax, edi
mov dword [esi + 0x11c], eax
sub esp, 0xc
mov edx, esp
mov eax, edx
mov dword [esi + 0x128], eax
sub esp, 0x34
mov eax, esp
mov dword [esi + 0x114], eax
mov dword [esi + 0x50], eax
sub esp, 0x14
mov eax, esp
mov dword [esi + 0x118], eax
mov dword [esi + 0x54], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x120], eax
mov esp, eax
push eax
mov eax, esp
mov dword [esi + 0x12c], eax
push eax
mov eax, esp
mov dword [esi + 0x130], eax
push eax
mov eax, esp
mov dword [esi + 0x134], eax
push eax
mov eax, esp
mov dword [esi + 0x138], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x58], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x5c], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x60], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x64], eax
push eax
mov eax, esp
mov dword [esi + 0x68], eax
push eax
mov eax, esp
mov dword [esi + 0x6c], eax
push eax
mov eax, esp
mov dword [esi + 0x70], eax
push eax
mov eax, esp
mov dword [esi + 0x74], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x78], eax
push eax
mov eax, esp
mov dword [esi + 0x7c], eax
push eax
mov eax, esp
mov dword [esi + 0x80], eax
sub esp, 0x190
mov eax, esp
mov dword [esi + 0x84], eax
push eax
mov eax, esp
mov dword [esi + 0x88], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x8c], eax
sub esp, 0x20
mov eax, esp
mov dword [esi + 0x90], eax
push eax
mov eax, esp
mov dword [esi + 0x94], eax
push eax
mov eax, esp
mov dword [esi + 0x98], eax
push eax
mov eax, esp
mov dword [esi + 0x9c], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xa0], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xa4], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xa8], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xac], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0xb0], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xb4], eax
push eax
mov eax, esp
mov dword [esi + 0xb8], eax
push eax
mov eax, esp
mov dword [esi + 0xbc], eax
push eax
mov eax, esp
mov dword [esi + 0xc0], eax
push eax
mov eax, esp
mov dword [esi + 0xc4], eax
push eax
mov eax, esp
mov dword [esi + 0xc8], eax
push eax
mov eax, esp
mov dword [esi + 0xcc], eax
push eax
mov eax, esp
mov dword [esi + 0xd0], eax
push eax
mov eax, esp
mov dword [esi + 0xd4], eax
sub esp, 0x10
mov eax, esp
mov dword [esi + 0xd8], eax
push eax
mov eax, esp
mov dword [esi + 0xdc], eax
push eax
mov eax, esp
mov dword [esi + 0xe0], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0xe4], eax
push eax
mov eax, esp
mov dword [esi + 0xe8], eax
push eax
sub esp, 0xffc
mov eax, esp
mov dword [esi + 0xec], eax
push eax
mov eax, esp
mov dword [esi + 0xf0], eax
push eax
mov eax, esp
mov dword [esi + 0xf4], eax
push eax
mov eax, esp
mov dword [esi + 0xf8], eax
sub esp, 0x14
mov eax, esp
mov dword [esi + 0xfc], eax
push eax
mov eax, esp
mov dword [esi + 0x100], eax
push eax
mov eax, esp
mov dword [esi + 0x104], eax
push eax
mov eax, esp
mov dword [esi + 0x108], eax
push eax
mov eax, esp
mov dword [esi + 0x10c], eax
mov eax, dword [esi + 0x13c]
mov dword [ecx], eax
mov eax, dword [esi + 0x110]
mov ecx, dword [esi + 0x140]
mov dword [eax], ecx
mov ecx, dword [esi + 0x114]
mov eax, dword [esi + 0x144]
mov dword [ebx], eax
mov eax, dword [esi + 0x118]
movsd xmm0, qword [0x100d917b]
movsd qword [edi + 5], xmm0
movsd xmm0, qword [0x100d9176]
movsd qword [edi], xmm0
mov edi, dword [0x100d91a8]
mov dword [edx + 7], edi
movsd xmm0, qword [0x100d91a1]
movsd qword [edx], xmm0
movups xmm0, xmmword [0x100ce0e8]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x100ce0d8]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.Xk6x41683.org]
movups xmmword [ecx], xmm0
mov word [ecx + 0x30], 0
mov cx, word [0x100d9150]
mov word [eax + 0x10], cx
movaps xmm0, xmmword [0x100d9140]
movups xmmword [eax], xmm0
call fcn.1005ee80
mov ecx, dword [esi + 0x11c]
mov edi, eax
mov eax, dword [esi + 0x120]
mov dword [esi + 0x124], edi
mov edi, edx
mov edx, dword [esi + 0x124]
mov dword [eax + 4], edi
mov dword [eax], edx
mov edx, dword [eax]
mov edi, dword [eax + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10054a70
mov ecx, dword [esi + 0x128]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x12c]
mov dword [eax], edx
mov eax, dword [eax]
sub esp, 4
mov dword [esp], ecx
call eax
mov edx, dword [esi + 0x130]
mov ecx, dword [esi + 0x134]
mov edi, eax
mov eax, dword [esi + 0x138]
mov dword [edx], edi
mov dword [ecx], 0
mov dword [eax], ecx
mov eax, dword [eax]
cmp dword [eax], 0
jne 0x100688c2
mov eax, dword [0x100db0b0]
and eax, dword [0x100db0b4]
sub eax, 0x933c6b38
mov ecx, 0x33477f15
xor edx, edx
div ecx
add eax, 0x35f3f5b5
xor eax, 0x9338147d
mov ecx, 0xbcb2c700
xor edx, edx
div ecx
mov ecx, 0xb20895c2
xor edx, edx
div ecx
add eax, 0xd88139aa
or eax, 0xde9ba610
or eax, 0x9647f026
and eax, 0x7a4d3e31
sub eax, 0xae994e54
and eax, 0x185fd84d
mov ecx, 0xef1150d5
xor edx, edx
div ecx
or eax, 0xacfabd42
add eax, 0xae745660
sub eax, 0x51e84034
add eax, 0xf5269491
sub eax, 0xfc1637a5
xor eax, 0xbaadeac0
imul eax, eax, 0xc693ed52
xor eax, 0x149ec1b
mov ecx, 0x1831d507
xor edx, edx
div ecx
or eax, 0x5e320390
imul eax, eax, 0xce1cb743
sub eax, 0x3605b175
sub eax, 0x46c66465
imul eax, eax, 0xa0620725
or eax, 0xbcc2109e
imul eax, eax, 0x8fdf7467
add eax, 0x11eb72dc
or eax, 0xf9d20cba
xor eax, 0x6d54dec9
add eax, 0x7b2f8ab9
add eax, 0x59627194
xor eax, 0x10e119af
add eax, 0xf4ab3363
imul eax, eax, 0x99ed4343
xor eax, 0x8d3f726d
imul eax, eax, 0xb6b39c56
mov ecx, 0x2a179cca
xor edx, edx
div ecx
xor eax, 0x5357b487
or eax, 0xeb4e85ea
xor eax, 0x445f3b2e
imul eax, eax, 0xdd3a8b7
mov ecx, 0x5824fb74
xor edx, edx
div ecx
imul eax, eax, 0x2b4befcc
xor eax, 0x7d518321
and eax, 0x1fa0e288
mov ecx, 0x67ea42ce
xor edx, edx
div ecx
xor eax, 0x1f8b160d
xor eax, 0xb4ec59ae
xor eax, 0x39221fad
xor eax, 0x3b8a1bc3
xor eax, 0xb4ae1c82
sub eax, 0x2bb86e5f
sub eax, 0x3c9191fc
mov ecx, 0xb05076d1
xor edx, edx
div ecx
mov ecx, 0xcf463b52
xor edx, edx
div ecx
or eax, 0xd906fd1d
sub eax, 0x75ac861b
add eax, 0x1cbf7041
sub eax, 0x6b482d66
or eax, 0x2928689c
imul eax, eax, 0x31b5e85c
imul eax, eax, 0x41dc3437
sub eax, 0x6ea780bd
add eax, 0x37bb4ba6
xor eax, 0x3cd173b7
or eax, 0xf03525e8
or eax, 0xb2e1bdb0
xor eax, 0xfe04d195
or eax, 0xff4fd311
cmp eax, 0x70967ed7
jbe 0x1006b471
mov edi, dword [esi + 0x60]
mov ebx, dword [esi + 0x5c]
mov eax, 0x48b0abfe
mov dword [esi + 0x38], eax
sub esp, 8
mov eax, esp
mov dword [eax + 4], 0x24
mov dword [eax], 0x20
call fcn.10050680
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x64]
add esp, 8
mov eax, dword [0x100d91bc]
mov dword [ecx + 7], eax
movsd xmm0, qword [0x100d91b5]
movsd qword [ecx], xmm0
mov eax, dword [0x100d9165]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0x130]
movsd xmm0, qword [str.e_f_]
movsd qword [ebx], xmm0
mov bx, word [0x100d9195]
mov word [edi + 8], bx
movsd xmm0, qword [0x100d918d]
movsd qword [edi], xmm0
mov di, word [0x100d911c]
mov word [edx + 8], di
movsd xmm0, qword [0x100d9114]
movsd qword [edx], xmm0
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0x68]
mov ecx, dword [esi + 0x5c]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x130]
mov dword [edx], edi
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0x6c]
mov ecx, dword [esi + 0x60]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x130]
mov dword [edx], edi
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0x70]
mov ecx, dword [esi + 0x64]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x130]
mov dword [edx], edi
mov edx, dword [eax]
xor edi, edi
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10054a70
mov ecx, dword [esi + 0x74]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x78]
mov dword [ecx], edx
mov ecx, dword [0x100d91ff]
mov dword [eax], ecx
mov ecx, dword [0x100d9203]
mov dword [eax + 4], ecx
sub esp, 4
mov dword [esp], eax
call fcn.1005eea0
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x38]
cmp ecx, 0
setne cl
mov byte [esi + 0x3f], cl
cmp eax, 0xdf311d02
jae 0x10067b61
mov al, byte [esi + 0x3f]
test al, 1
jne 0x10067cd7
jmp 0x10067d20
mov ecx, dword [esi + 0x50]
mov edi, dword [esi + 0x7c]
mov dword [edi], 5
sub esp, 4
mov eax, esp
mov dword [eax], ecx
call fcn.100a35b0
mov edx, dword [esi + 0x50]
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x80]
add ecx, 1
sub ecx, dword [edi]
mov dword [eax], ecx
mov eax, dword [eax]
mov ecx, edx
add ecx, dword [edi]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.100a3640
add esp, 0xc
mov eax, dword [str.cYg2]
add eax, dword [0x100db0c4]
and eax, 0x1884eb23
and eax, 0xe4b15b37
mov ecx, 0x5c12d3c0
xor edx, edx
div ecx
imul eax, eax, 0x995e2221
mov ecx, 0x9aad2475
xor edx, edx
div ecx
xor eax, 0x13d1043a
or eax, 0x2f80c3a3
mov ecx, 0x5a0e57ba
xor edx, edx
div ecx
mov ecx, 0xa72811dd
xor edx, edx
div ecx
mov ecx, 0x96e04b42
xor edx, edx
div ecx
mov ecx, 0x696685ef
xor edx, edx
div ecx
or eax, 0x6fa8ea82
mov ecx, 0xd2f180d
xor edx, edx
div ecx
imul eax, eax, 0x46313d8d
mov ecx, 0x2065ef1d
xor edx, edx
div ecx
and eax, 0x69874284
or eax, 0x4f9cee87
mov ecx, 0x9ded625c
xor edx, edx
div ecx
imul eax, eax, 0x2f30fda
imul eax, eax, 0xee3d4726
xor eax, 0x412745af
sub eax, 0x3d8399b8
imul eax, eax, 0x58efa943
mov ecx, 0x49c93aae
xor edx, edx
div ecx
imul eax, eax, 0x28bc992f
add eax, 0x685ab09b
xor eax, 0xaa8e20b6
sub eax, 0xd6460295
xor eax, 0x4f28e1e6
or eax, 0xd88087bb
imul eax, eax, 0x6fc9058e
mov ecx, 0xd52744e9
xor edx, edx
div ecx
add eax, 0xe76dc9dd
or eax, 0x45ff314
add eax, 0xc26c7dc4
or eax, 0x45fced9d
imul eax, eax, 0x7904632f
xor eax, 0xbac9a9a8
mov ecx, 0x3920edae
xor edx, edx
div ecx
add eax, 0xaf7e3e44
xor eax, 0xc5d9f8f1
mov ecx, 0x7645af10
xor edx, edx
div ecx
add eax, 0x6217911f
and eax, 0x93c4a8d1
sub eax, 0xd5e25b64
mov ecx, 0x23786779
xor edx, edx
div ecx
or eax, 0x8ecc2e5
and eax, 0xd46ca851
xor eax, 0xbbef9904
and eax, 0x9e9686d5
xor eax, 0x262dfb66
add eax, 0xe7c68033
imul eax, eax, 0x1fcf9bef
or eax, 0x97616e74
mov ecx, 0xc7392f82
xor edx, edx
div ecx
mov ecx, 0xd8dc5e26
xor edx, edx
div ecx
mov ecx, 0x40ba9192
xor edx, edx
div ecx
sub eax, 0x9b35289f
sub eax, 0x4cf6f022
and eax, 0xefd3a5f6
add eax, 0xcd5d013f
mov ecx, 0xbfadebb7
xor edx, edx
div ecx
and eax, 0xc138c41
sub eax, 0xe40f0714
or eax, 0xa4729846
mov ecx, 0x50da8e14
xor edx, edx
div ecx
xor eax, 0xc24a8059
mov ecx, 0xa99f9b69
xor edx, edx
div ecx
and eax, 0xa9de8764
add eax, 0x99b0b7d
imul eax, eax, 0xe0d7b064
or eax, 0x85d93466
cmp eax, 0xefc290fe
jae 0x1006b5bb
mov ecx, dword [esi + 0x84]
mov eax, dword [str._ro_bHb]
or eax, dword [0x100db0cc]
or eax, 0xe1eda665
imul eax, eax, 0x4b489ff0
or eax, 0xd4dfdea7
mov edi, 0x300acddf
xor edx, edx
div edi
mov edi, 0xfaee00e8
xor edx, edx
div edi
add eax, 0xeda8eb7c
or eax, 0x81d3b2eb
and eax, 0x5d58cf8b
xor eax, 0x37b049ef
sub eax, 0xa51bbb5e
mov edi, 0xb748bf75
xor edx, edx
div edi
mov edi, 0x646eb43e
xor edx, edx
div edi
add eax, 0x7c05fdad
sub eax, 0x376825e6
mov edi, 0x9d0ecc67
xor edx, edx
div edi
imul eax, eax, 0xd9350a0f
and eax, 0x8c91398b
sub eax, 0x93b50d1f
or eax, 0x7287abf3
sub eax, 0x94f13960
mov edi, 0xd2fc04b
xor edx, edx
div edi
or eax, 0x4ed3e098
mov edi, 0x2a3d988c
xor edx, edx
div edi
add eax, 0x173e23a4
sub eax, 0xb7624244
or eax, 0x50e30d9a
and eax, 0x11acd4c1
add eax, 0x60aa1ab3
and eax, 0xdabbdafe
or eax, 0x211d42fa
sub eax, 0xf1ea7a4e
imul eax, eax, 0x2e45f9a8
add eax, 0x1deaefee
add eax, 0x7dfaf448
mov edi, 0x35f0177f
xor edx, edx
div edi
xor eax, 0x46ce35a4
mov edi, 0x28ea6a82
xor edx, edx
div edi
xor eax, 0x487d58ea
mov edi, 0x8eee47bc
xor edx, edx
div edi
imul eax, eax, 0xc4b91315
and eax, 0x84482758
mov edi, 0x838f169e
xor edx, edx
div edi
or eax, 0xa3e59cad
sub eax, 0x6666385a
sub eax, 0x2bfdeefd
add eax, 0x8fe3ef64
xor eax, 0x9c1d7b06
xor eax, 0x41254bec
add eax, 0xadb9955e
sub eax, 0xc0adf49
sub eax, 0x9113cee5
sub eax, 0xccdaea3a
imul eax, eax, 0x99779a32
xor eax, 0xdf361c35
and eax, 0x58ff43ad
add eax, 0x49044d1b
xor eax, 0x1b18ddb9
mov edi, 0xb273c89b
xor edx, edx
div edi
add eax, 0xa29bba38
add eax, 0xf2f83344
or eax, 0xa4d2e16f
mov edi, 0xf72fd2ea
xor edx, edx
div edi
mov edi, 0x7e6291fe
xor edx, edx
div edi
xor eax, 0xffe8dd2b
sub eax, 0x406cc1f2
or eax, 0xc5e15cf1
xor eax, 0xf2609fe7
xor eax, 0xba40d565
add eax, 0xcdc51348
mov edi, 0xa8dcf6e
xor edx, edx
div edi
mov edx, eax
mov eax, dword [esi + 0x68]
and edx, 0x8da6eecb
xor edx, 0x3772ec32
mov dword [esi + 0x34], edx
sub esp, 8
mov dword [esp], 0x202
mov dword [esp + 4], ecx
call dword [eax]
mov ecx, dword [esi + 0x88]
mov eax, dword [esi + 0x90]
mov dword [ecx], 1
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20
call fcn.100860e0
mov ecx, dword [esi + 0x90]
mov eax, dword [esi + 0x34]
add esp, 0xc
mov dword [ecx + 4], 2
mov dword [ecx + 8], 1
cmp eax, 0x4937f84f
je 0x10067ef8
jmp 0x10068125
mov eax, dword [0x100db0d0]
sub eax, dword [0x100db0d4]
mov ecx, 0xe2900734
xor edx, edx
div ecx
sub eax, 0x4bcf0c98
imul eax, eax, 0x8a6920c1
and eax, 0xe2321f63
mov ecx, 0xbaf30980
xor edx, edx
div ecx
or eax, 0xf54a1a3a
add eax, 0x5e0fec54
and eax, 0xe3c5c553
mov ecx, 0x1a450381
xor edx, edx
div ecx
add eax, 0xa9c40ba6
sub eax, 0xedd17c9c
mov ecx, 0xe27994a3
xor edx, edx
div ecx
add eax, 0xea1e2bef
sub eax, 0x8c2584c0
and eax, 0x2496e222
mov ecx, 0xe9c9d278
xor edx, edx
div ecx
or eax, 0xfe1c523b
add eax, 0xde578d4e
sub eax, 0xe7eec8a
imul eax, eax, 0x56bcda82
and eax, 0x57bf1e80
mov ecx, 0x4a4c32ca
xor edx, edx
div ecx
and eax, 0x96f95b9
mov ecx, 0xcd546379
xor edx, edx
div ecx
sub eax, 0xce95f526
imul eax, eax, 0x79879924
imul eax, eax, 0x6901e4e5
or eax, 0x1e7b5fb8
and eax, 0x3cec2ba7
mov ecx, 0x26f32ece
xor edx, edx
div ecx
imul eax, eax, 0x860828bc
sub eax, 0xdccb148f
or eax, 0xcf566d20
add eax, 0x389d858d
add eax, 0x5ae6f467
add eax, 0x3893ce28
xor eax, 0xf51eff23
add eax, 0xf4ed1c0f
or eax, 0x5e779751
mov ecx, 0x7cb65ec2
xor edx, edx
div ecx
add eax, 0x3fc92178
imul eax, eax, 0x13b7f96c
sub eax, 0xac999662
or eax, 0x8a983028
and eax, 0x3936ed10
or eax, 0x2f1cf5e3
imul eax, eax, 0x16fd1d57
and eax, 0x11adefc1
add eax, 0x4d1d7aa1
and eax, 0xb6a4ddbd
and eax, 0xe3e7ce90
or eax, 0x622e8dd6
imul eax, eax, 0x26e7039a
sub eax, 0xb3fe0f5b
xor eax, 0xe25bf2c0
and eax, 0xf5fcb5b9
mov ecx, 0x70814c3c
xor edx, edx
div ecx
add eax, 0x61e0a74
and eax, 0xbbaa44ec
and eax, 0x3d790925
imul eax, eax, 0xcf4e30da
sub eax, 0xdcee6a9d
imul eax, eax, 0x54c7573c
imul eax, eax, 0x52a304d1
mov ecx, 0x36a4b6b6
xor edx, edx
div ecx
and eax, 0xc346fb85
and eax, 0x33e29d3d
imul eax, eax, 0x4b0c73e7
imul eax, eax, 0x4500db08
xor eax, 0xdb161c8c
and eax, 0xc82027a2
xor eax, 0x55ab4412
cmp eax, 0x13b11e7e
jb 0x1006b61f
mov ecx, dword [esi + 0x88]
mov eax, dword [0x100db0d8]
add eax, dword [0x100db0dc]
xor eax, 0x2dceb10a
or eax, 0xe296cf2b
or eax, 0x1b74ca2a
or eax, 0x4788f43d
mov edi, 0x1403682c
xor edx, edx
div edi
and eax, 0xe24cc3f6
mov edi, 0x6da3c27b
xor edx, edx
div edi
add eax, 0xc3f4067a
add eax, 0xfbfaa8ff
add eax, 0x5c7f8a4b
and eax, 0x3ad124e1
add eax, 0x6c308af7
xor eax, 0xc913641d
add eax, 0x64aa00d4
add eax, 0xa518c2a7
imul eax, eax, 0xa2166698
xor eax, 0x5ad55b6a
sub eax, 0x2f8342e9
xor eax, 0x7dec272f
and eax, 0x7b5db19c
mov edi, 0x4a7e87ac
xor edx, edx
div edi
add eax, 0x27966c89
sub eax, 0x56af0ac
xor eax, 0x8dd45b20
mov edi, 0x1b4046c1
xor edx, edx
div edi
and eax, 0x1c0689f1
xor eax, 0xe99c04dc
mov edi, 0x521fa02
xor edx, edx
div edi
or eax, 0x94a9968d
or eax, 0x19bd9bd0
sub eax, 0xb4fd86d
add eax, 0xcb579176
add eax, 0x760d5438
add eax, 0xfdb18417
sub eax, 0x53983e42
xor eax, 0x4de4b189
xor eax, 0x1c41c4d5
add eax, 0xff211edc
imul eax, eax, 0xbba8f85d
sub eax, 0x3f763f38
mov edi, 0x4ec61ca3
xor edx, edx
div edi
add eax, 0x35c00beb
xor eax, 0x27ed8e31
and eax, 0x792308db
sub eax, 0x5acb11b3
add eax, 0x6d79ded8
imul eax, eax, 0x9ad22727
imul eax, eax, 0xb993c924
imul eax, eax, 0x571aa16e
mov edi, 0x85334879
xor edx, edx
div edi
mov edi, 0xa8fead1d
xor edx, edx
div edi
mov edi, 0xa8e5e49c
xor edx, edx
div edi
or eax, 0x2abcc70f
add eax, 0xa8148b06
xor eax, 0xa767493c
and eax, 0x3e855e3b
xor eax, 0x867706c5
sub eax, 0xfe0f5c5a
xor eax, 0xc15aee26
sub eax, 0x267a57b4
and eax, 0xd9f19223
sub eax, 0x127b7cc
sub eax, 0x930065d7
or eax, 0xfbc3e211
mov edi, 0x62038d77
xor edx, edx
div edi
mov edi, 0x86aa963e
xor edx, edx
div edi
imul eax, eax, 0xea95fd5c
sub eax, 0x64997008
or eax, 0x535c6319
add eax, 0x35edd6cd
or eax, 0xef38b160
add eax, 0xaf103554
cmp dword [ecx], 0
setne cl
mov byte [esi + 0x33], cl
cmp eax, 0xf370e3a6
ja 0x1006b61f
mov al, byte [esi + 0x33]
test al, 1
jne 0x100684ab
jmp 0x100684e8
mov ecx, dword [esi + 0x94]
mov edx, dword [esi + 0x90]
mov edi, dword [esi + 0x50]
mov eax, dword [esi + 0x6c]
mov eax, dword [eax]
xor ebx, ebx
sub esp, 0x10
mov dword [esp], edi
mov dword [esp + 4], 0
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call eax
mov ecx, eax
mov eax, dword [esi + 0x88]
mov dword [eax], ecx
jmp 0x10068125
mov eax, dword [0x100db0e0]
and eax, dword [0x100db0e4]
imul eax, eax, 0xf3079990
imul eax, eax, 0x78bba24a
add eax, 0xeafa8e41
mov ecx, 0x412e609d
xor edx, edx
div ecx
sub eax, 0x255b98cd
xor eax, 0x27888135
xor eax, 0xa202e95e
mov ecx, 0x3a59e5d5
xor edx, edx
div ecx
and eax, 0x8a45cc0b
xor eax, 0x4b06008e
mov ecx, 0x852d6d91
xor edx, edx
div ecx
mov ecx, 0xcd48aa10
xor edx, edx
div ecx
imul eax, eax, 0x85c81633
mov ecx, 0x4e7951d4
xor edx, edx
div ecx
add eax, 0x756f57f7
and eax, 0x5d053f2c
add eax, 0x5c3a9782
add eax, 0xc5aeec49
add eax, 0xf4cf4b3
sub eax, 0xdeaf692a
add eax, 0xb8b08c57
mov ecx, 0x9f2ec052
xor edx, edx
div ecx
add eax, 0xf9b0aca2
or eax, 0xcbbf8b5a
mov ecx, 0xdf010892
xor edx, edx
div ecx
or eax, 0xe7443053
add eax, 0x99e7ccf1
xor eax, 0xc740d549
xor eax, 0xb36a1778
imul eax, eax, 0x6eed4ac9
and eax, 0x7b6d4467
sub eax, 0xf96e3501
xor eax, 0x86aa65e0
or eax, 0x1baac2cd
xor eax, 0x732af5d1
xor eax, 0xc8186d9e
imul eax, eax, 0xdf423eb4
add eax, 0xaa67da29
or eax, 0x226c9eb5
or eax, 0x3ec21a40
mov ecx, 0xec628ede
xor edx, edx
div ecx
add eax, 0x6c145734
xor eax, 0x758d3b82
xor eax, 0x6f59a650
add eax, 0xe986dfe5
sub eax, 0x621f64be
mov ecx, 0xf6296135
xor edx, edx
div ecx
and eax, 0x1b79bcdf
mov ecx, 0x69b84094
xor edx, edx
div ecx
add eax, 0x38ef66fe
and eax, 0x36160a18
or eax, 0x350fa041
sub eax, 0x123f6fe5
xor eax, 0x7f0d5980
sub eax, 0x264b327e
mov ecx, 0x780c125c
xor edx, edx
div ecx
imul eax, eax, 0x4699d1c5
xor eax, 0xe30f3564
or eax, 0x26f3097b
or eax, 0xea8ce4bc
add eax, 0xb60795c
xor eax, 0x23fac90e
add eax, 0x5489736f
sub eax, 0x620389cc
imul eax, eax, 0x8cd90a2c
sub eax, 0x278c1b37
xor eax, 0x8f30f28f
sub eax, 0xcbd66bf4
sub eax, 0x5e98aabf
xor eax, 0xbb5d18b
or eax, 0x654a09e8
imul eax, eax, 0x6d071ac0
cmp eax, 0x8787c863
jbe 0x1006b624
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 0x94]
mov eax, dword [0x100db0e8]
or eax, dword [0x100db0ec]
sub eax, 0x198469b0
and eax, 0x3b489998
and eax, 0x970e489d
imul eax, eax, 0x9320744f
mov ebx, 0xa3051ff4
xor edx, edx
div ebx
xor eax, 0x61a71941
sub eax, 0x1d09c2c6
sub eax, 0xaa5344ee
mov ebx, 0x5b6d771
xor edx, edx
div ebx
imul eax, eax, 0xeef794ec
add eax, 0x3db7e740
imul eax, eax, 0x4d5be63f
mov ebx, 0xe76708ff
xor edx, edx
div ebx
add eax, 0x9c69cfa1
xor eax, 0x6cbbb351
or eax, 0x31a2b1a4
xor eax, 0xcb1c37d3
mov ebx, 0x3b5329cd
xor edx, edx
div ebx
sub eax, 0x7e098958
xor eax, 0xbc8224a
imul eax, eax, 0x4d19ff39
xor eax, 0x37a0d83f
sub eax, 0x49eaf472
add eax, 0xfa935574
and eax, 0xd64f548b
and eax, 0x9dd6862d
or eax, 0x7acdb36f
imul eax, eax, 0x1d876ae5
sub eax, 0x8d11c11a
imul eax, eax, 0x413d1edd
sub eax, 0x534d4865
or eax, 0x90b1ac51
and eax, 0xa1cf708e
mov ebx, 0x2d9dffbe
xor edx, edx
div ebx
and eax, 0x1098460d
add eax, 0xae0d1147
xor eax, 0xb806a7ea
imul eax, eax, 0x3d092aac
or eax, 0xbcf3e3e5
xor eax, 0xad8ee39e
add eax, 0xfafdb13e
imul eax, eax, 0x1773158a
or eax, 0x4aa9a2d7
add eax, 0xa560220b
or eax, 0x6eb7367e
or eax, 0xb67b0cc1
xor eax, 0xa878322b
add eax, 0x3d61b2db
and eax, 0x984c6ad1
and eax, 0xb62f0183
add eax, 0xf4a46ab5
add eax, 0x678bfd14
and eax, 0x544c6cfd
xor eax, 0x7e88723
mov ebx, 0x36c9ceea
xor edx, edx
div ebx
imul eax, eax, 0xfc2374d0
or eax, 0x23e5d76f
mov ebx, 0xe5a24dbe
xor edx, edx
div ebx
and eax, 0xee72ee1a
or eax, 0x5782afe
add eax, 0xeed7639
or eax, 0xe17ba4b7
mov ebx, 0x76eb304e
xor edx, edx
div ebx
mov ebx, 0x2e9ffa09
xor edx, edx
div ebx
mov edx, dword [esi + 0x98]
mov ebx, eax
mov eax, dword [esi + 0x70]
imul ebx, ebx, 0x2823730
and ebx, 0xd01d912a
imul ebx, ebx, 0x20cd9714
sub ebx, 0xf864c112
xor ebx, 0x81ef4ead
xor ebx, 0xbee16760
and ebx, 0xda5a94c0
and ebx, 0x3d0faca3
mov dword [esi + 0x2c], ebx
mov edi, dword [edi]
mov edi, dword [edi + 0x18]
mov dword [edx], edi
mov eax, dword [eax]
mov edx, dword [edx]
add edx, 4
sub esp, 0x10
mov dword [esp], 2
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0x16
call eax
mov ecx, dword [esi + 0x8c]
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], ecx
call eax
mov edx, dword [esi + 0x9c]
mov ecx, dword [esi + 0x138]
mov edi, eax
mov eax, dword [esi + 0x2c]
mov dword [edx], edi
mov edx, dword [edx]
mov ecx, dword [ecx]
mov dword [ecx], edx
cmp eax, 0x32fb5f0f
ja 0x1006869a
jmp 0x100688c2
mov eax, dword [0x100db0f0]
xor eax, dword [0x100db0f4]
mov ecx, 0x98b98888
xor edx, edx
div ecx
mov ecx, 0x65fdc5e7
xor edx, edx
div ecx
mov ecx, 0x2392363
xor edx, edx
div ecx
add eax, 0x87f0a3a5
and eax, 0xaaf8a65b
or eax, 0xbe22834f
and eax, 0xa5ec38c9
imul eax, eax, 0xd0164ebd
mov ecx, 0x1727bbb6
xor edx, edx
div ecx
and eax, 0x400594fa
sub eax, 0x40038a3
sub eax, 0x2a36f635
or eax, 0x5cb5d101
imul eax, eax, 0x7a210504
mov ecx, 0x73db7c00
xor edx, edx
div ecx
or eax, 0x902d9732
and eax, 0x5b0d4a6e
or eax, 0x964eb2ee
or eax, 0xb13ba704
imul eax, eax, 0x1f6fa454
and eax, 0xe3c38d01
add eax, 0x3ef681ed
or eax, 0x10a7ffaa
or eax, 0xee50cd41
add eax, 0x45b02afc
add eax, 0xcd48cf65
mov ecx, 0xce34655c
xor edx, edx
div ecx
imul eax, eax, 0xbf359808
xor eax, 0xd31c17f0
or eax, 0xa7db926a
or eax, 0x5ad14ff7
add eax, 0xbee7580c
sub eax, 0x51c0905c
mov ecx, 0x7f0212bd
xor edx, edx
div ecx
imul eax, eax, 0x809a456
add eax, 0x27e81316
imul eax, eax, 0x556505a1
add eax, 0x7e656fae
xor eax, 0x64e0dee6
mov ecx, 0x71ef2d86
xor edx, edx
div ecx
mov ecx, 0x44ee7b6f
xor edx, edx
div ecx
imul eax, eax, 0xe425d84c
or eax, 0xeb39576f
add eax, 0x785cda56
imul eax, eax, 0xa3b0da75
or eax, 0xbc4fa5c0
add eax, 0x98990709
or eax, 0x84e64ddb
add eax, 0x66d6d83f
and eax, 0x9e941d0a
and eax, 0xc9251ea4
add eax, 0x378f73bd
add eax, 0x56c5ab4b
xor eax, 0x3e7c9342
and eax, 0x36e29b2d
or eax, 0x5e064342
imul eax, eax, 0x44bbcd67
add eax, 0xa592844f
mov ecx, 0xd08abc5b
xor edx, edx
div ecx
mov ecx, 0x64aabf56
xor edx, edx
div ecx
mov ecx, 0xb077f5b7
xor edx, edx
div ecx
and eax, 0xa96b5f8
imul eax, eax, 0x53e480e6
xor eax, 0x4bfb5c99
imul eax, eax, 0x7f60484b
or eax, 0xa35ed175
add eax, 0x1de69c81
xor eax, 0x22fb8a54
and eax, 0x815b9d71
add eax, 0x4f630b7e
and eax, 0x811a53fe
or eax, 0xc8438037
cmp eax, 0xdc24835f
je 0x1006b691
mov edi, dword [esi + 0xd4]
mov ebx, dword [esi + 0xd0]
mov edx, dword [esi + 0xb4]
mov eax, dword [esi + 0xa0]
mov ecx, 0x5e8bfb70
mov dword [esi + 0x28], ecx
mov ecx, dword [0x100d91ec]
mov dword [eax + 3], ecx
mov ecx, dword [0x100d91e9]
mov dword [eax], ecx
mov ecx, dword [esi + 0xa4]
mov eax, dword [esi + 0xa8]
movsd xmm0, qword [0x100d920e]
movsd qword [ecx], xmm0
mov cl, byte [0x100d91f8]
mov byte [eax + 4], cl
mov ecx, dword [0x100d91f4]
mov dword [eax], ecx
mov ecx, dword [esi + 0xac]
mov al, byte [0x100d921f]
mov byte [ecx + 4], al
mov eax, dword [0x100d921b]
mov dword [ecx], eax
mov eax, dword [esi + 0xb0]
mov ecx, dword [0x100d91d4]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0xa0]
movsd xmm0, qword [0x100d91cc]
movsd qword [eax], xmm0
mov ax, word [0x100d91e1]
mov word [edx + 4], ax
mov eax, dword [0x100d91dd]
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov ecx, dword [esi + 0xa4]
mov edx, dword [esi + 0xb8]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov ecx, dword [esi + 0xa8]
mov edx, dword [esi + 0xbc]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0xc0]
mov ecx, dword [esi + 0xac]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0xc4]
mov ecx, dword [esi + 0xb0]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov ecx, dword [esi + 0xc8]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x130]
mov dword [ecx], edx
mov edx, dword [eax]
xor ecx, ecx
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0xb4]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10054a70
mov edx, dword [esi + 0x138]
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0xcc]
mov dword [eax], ecx
mov ecx, dword [esi + 0xd8]
mov dword [ebx], 0x1000
mov dword [edi], 0
mov edx, dword [edx]
mov edx, dword [edx]
mov dword [ecx + 4], edx
mov word [ecx], 2
sub esp, 4
mov dword [esp], 0x50
call dword [eax]
mov ecx, dword [esi + 0xd8]
mov edx, eax
mov eax, dword [esi + 0xb8]
mov word [ecx + 2], dx
xor ecx, ecx
sub esp, 0xc
mov dword [esp], 2
mov dword [esp + 4], 1
mov dword [esp + 8], 0
call dword [eax]
mov edx, dword [esi + 0xdc]
mov ecx, dword [esi + 0xd8]
mov edi, eax
mov eax, dword [esi + 0xbc]
mov dword [edx], edi
mov eax, dword [eax]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x10
call eax
mov ecx, dword [esi + 0xd4]
mov edx, eax
mov eax, dword [esi + 0x28]
mov dword [ecx], edx
cmp eax, 0xf2ea87f3
je 0x1006b691
jmp 0x10068cdd
mov eax, dword [0x100db100]
imul eax, dword [0x100db104]
add eax, 0x405bca42
mov ecx, 0xe555ffd0
xor edx, edx
div ecx
or eax, 0x727f7bc4
xor eax, 0xdb1dd8aa
or eax, 0x354e7dfd
imul eax, eax, 0x2da6062b
or eax, 0xd3aea289
add eax, 0x170d34e7
and eax, 0x493a1eb4
and eax, 0xd9b5b563
or eax, 0x745c77ea
xor eax, 0x449075ff
add eax, 0x497a8957
and eax, 0x30d0158e
mov ecx, 0x101f3302
xor edx, edx
div ecx
and eax, 0x51ea684e
or eax, 0x243f87a7
add eax, 0x753512b1
and eax, 0x7b6f5b0d
imul eax, eax, 0xd7ba2625
imul eax, eax, 0xae4eb549
and eax, 0xc9010430
or eax, 0x55baf036
or eax, 0x6750be37
sub eax, 0x817e7249
add eax, 0x1b74fa75
add eax, 0x73238e88
imul eax, eax, 0xe4ca73f4
and eax, 0x122f962b
sub eax, 0x86762bca
xor eax, 0x1fe0e8fa
mov ecx, 0xd0209694
xor edx, edx
div ecx
add eax, 0xd713c21
xor eax, 0xb7fa325c
imul eax, eax, 0x854d3f95
add eax, 0x88d9d0ae
sub eax, 0x792bbae3
sub eax, 0x24072a36
imul eax, eax, 0x753eaf39
xor eax, 0x34883ea4
sub eax, 0xce4c18bc
mov ecx, 0xc3f9b2a9
xor edx, edx
div ecx
mov ecx, 0xd0856022
xor edx, edx
div ecx
mov ecx, 0x8bbcabb
xor edx, edx
div ecx
or eax, 0x388c02cd
and eax, 0x5e281077
or eax, 0x62bf6b30
and eax, 0x6e68344e
and eax, 0xf8ba87ee
add eax, 0x5dec1098
xor eax, 0xed099b26
xor eax, 0xb648d5bc
mov ecx, 0xf7541257
xor edx, edx
div ecx
or eax, 0xe99ce1ef
and eax, 0x3d0dba72
sub eax, 0xe18d7b3d
imul eax, eax, 0xf7bf5e96
add eax, 0x69b20107
xor eax, 0xc3c2c157
imul eax, eax, 0xc6de142d
xor eax, 0xf50b4789
and eax, 0x78494bd5
and eax, 0x38a5d236
mov ecx, 0x5092f97
xor edx, edx
div ecx
imul eax, eax, 0x33f1cf8
sub eax, 0x5dea140b
imul eax, eax, 0x71e6459f
sub eax, 0x52192b97
imul eax, eax, 0xbe806ce1
add eax, 0xd04c2800
sub eax, 0x90a41738
sub eax, 0x5c3f652b
cmp eax, 0x854bb484
je 0x1006b8dd
mov ecx, dword [esi + 0xd4]
mov eax, dword [0x100db108]
sub eax, dword [0x100db10c]
imul eax, eax, 0x88b05927
add eax, 0xfa4a8efd
xor eax, 0xb2a99cea
and eax, 0x52f470fc
or eax, 0x36b624f1
mov edi, 0x20bf5fbb
xor edx, edx
div edi
mov edi, 0x78f97770
xor edx, edx
div edi
and eax, 0xb91e1e1f
add eax, 0x93db6ae9
mov edi, 0xb8356d20
xor edx, edx
div edi
add eax, 0x2603208a
mov edi, 0x6cf36951
xor edx, edx
div edi
mov edi, 0x32f546f1
xor edx, edx
div edi
add eax, 0x146fbf5f
sub eax, 0xe61b44a3
add eax, 0xf39c0b
imul eax, eax, 0x62c68b81
add eax, 0xf53d92b8
add eax, 0x2cae03dd
and eax, 0xde8c2198
imul eax, eax, 0xa8e65182
xor eax, 0xf675cdf3
and eax, 0x87fb6cef
mov edi, 0xc54adb15
xor edx, edx
div edi
and eax, 0xd61a2729
imul eax, eax, 0x7d541936
add eax, 0x848e3e3f
mov edi, 0x8d7112fb
xor edx, edx
div edi
and eax, 0x6f415411
xor eax, 0x8b4127e4
xor eax, 0xe7297f1d
add eax, 0xf511b636
or eax, 0x39735268
or eax, 0x390973a0
xor eax, 0xea04eda2
and eax, 0x5af23069
sub eax, 0xb12bb12f
mov edi, 0x197ad9bc
xor edx, edx
div edi
add eax, 0x2e77c2cf
or eax, 0xf7c88273
sub eax, 0xc7c5c9ea
mov edi, 0x420dbb1d
xor edx, edx
div edi
and eax, 0xa338302e
add eax, 0x8bcf6993
xor eax, 0xcaff6045
imul eax, eax, 0x38130f67
imul eax, eax, 0x3241adec
or eax, 0x26f7ec94
and eax, 0xadb2960d
add eax, 0xe1a49e64
imul eax, eax, 0x7c90923b
add eax, 0x77d5cf63
xor eax, 0x8406cc07
imul eax, eax, 0x53268636
and eax, 0xa2e0aa59
sub eax, 0xf1f0535e
xor eax, 0x75da5dc3
mov edi, 0xf0d73436
xor edx, edx
div edi
or eax, 0x519cad64
and eax, 0x1599872c
and eax, 0x196d53a7
imul eax, eax, 0x95ea3239
xor eax, 0xf6ccbe0c
sub eax, 0x1e2d8231
and eax, 0x7d615c0d
xor eax, 0x336a38f4
or eax, 0xd89b87e4
and eax, 0xd49f31da
imul eax, eax, 0x47fcef26
sub eax, 0x8f08ae83
sub eax, 0x6dc076de
mov edi, 0x26fa3415
xor edx, edx
div edi
cmp dword [ecx], 0xffffffff
sete cl
mov byte [esi + 0x27], cl
cmp eax, 0xe752fdaa
je 0x10068e87
mov al, byte [esi + 0x27]
test al, 1
jne 0x1006905a
jmp 0x100690a3
mov ecx, dword [esi + 0xd8]
mov edx, dword [esi + 0xdc]
mov eax, dword [esi + 0xbc]
mov eax, dword [eax]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x10
call eax
mov ecx, eax
mov eax, dword [esi + 0xd4]
mov dword [eax], ecx
sub esp, 4
mov dword [esp], 0x320
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x10068cdd
mov edi, dword [esi + 0xdc]
sub esp, 4
mov dword [esp], 0x104
call fcn.10082711
mov edx, dword [esi + 0xe4]
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0xe0]
mov dword [eax], ecx
mov ecx, dword [0x100d922b]
mov dword [edx], ecx
mov ecx, dword [0x100d922f]
mov dword [edx + 4], ecx
mov ecx, dword [0x100d9233]
mov dword [edx + 8], ecx
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100a3420
mov ecx, dword [esi + 0xe0]
add esp, 8
mov eax, dword [esi + 0x50]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a3430
mov ecx, dword [esi + 0xe0]
add esp, 8
mov eax, dword [esi + 0x54]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a3430
mov ecx, dword [esi + 0xe0]
add esp, 8
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a3430
add esp, 8
mov eax, dword [esi + 0xe0]
mov ecx, dword [eax]
lea eax, [0x100ce496]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a3430
mov edx, dword [esi + 0xe0]
mov ecx, dword [esi + 0xc0]
add esp, 8
mov eax, dword [esi + 0xe8]
mov edx, dword [edx]
mov dword [eax], edx
mov ecx, dword [ecx]
mov dword [esi + 0x20], ecx
mov ecx, dword [eax]
sub esp, 4
mov eax, esp
mov dword [eax], ecx
call fcn.100a35b0
mov edx, dword [esi + 0xe8]
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x20]
mov edx, dword [edx]
mov edi, dword [edi]
xor ebx, ebx
sub esp, 0x10
mov dword [esp], edi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
call eax
mov ecx, eax
mov eax, dword [esi + 0xd4]
mov dword [eax], ecx
cmp dword [eax], 0xffffffff
jne 0x100691e8
mov eax, dword [esi + 0x40]
mov dword [eax], 0
jmp 0x1006b451
mov eax, dword [0x100db110]
imul eax, dword [0x100db114]
imul eax, eax, 0x5ce008a8
xor eax, 0xcf8f4c57
and eax, 0x9c8cced1
mov ecx, 0xb8019cdc
xor edx, edx
div ecx
imul eax, eax, 0x58c61d3c
imul eax, eax, 0x734c7067
xor eax, 0x3c17848e
mov ecx, 0x60e873ad
xor edx, edx
div ecx
or eax, 0x4ccd6b2d
or eax, 0x9ef2e764
imul eax, eax, 0x8d18052b
add eax, 0xbcfb5207
sub eax, 0x26feaf66
xor eax, 0xbf0f6915
mov ecx, 0x3ab3547
xor edx, edx
div ecx
xor eax, 0xa9dfba16
xor eax, 0x3baf1580
mov ecx, 0xb87c6406
xor edx, edx
div ecx
imul eax, eax, 0xfb327294
imul eax, eax, 0x27e69e21
or eax, 0x2cc9d252
and eax, 0x2c004541
xor eax, 0x2a15aab1
add eax, 0xa300470
xor eax, 0x55021d7a
imul eax, eax, 0xe611af76
or eax, 0x1eb539e2
or eax, 0xb2e25da7
mov ecx, 0xa231601b
xor edx, edx
div ecx
sub eax, 0x6190fce5
add eax, 0xeb7d1d84
sub eax, 0xf884b512
xor eax, 0xb1cf5b1b
mov ecx, 0xe8f37801
xor edx, edx
div ecx
add eax, 0xa0333f0c
sub eax, 0xf47e7611
imul eax, eax, 0xe3d91c86
or eax, 0x6ba66170
sub eax, 0x437aaca5
xor eax, 0xa316c1fb
imul eax, eax, 0xa3e69a34
or eax, 0xe0e494a0
and eax, 0xc51de516
xor eax, 0x212dc76d
sub eax, 0xa2ae300c
mov ecx, 0xa81b4c26
xor edx, edx
div ecx
mov ecx, 0xa29fd19e
xor edx, edx
div ecx
add eax, 0xbc7c109f
add eax, 0xef245112
mov ecx, 0x2be1cd59
xor edx, edx
div ecx
xor eax, 0x25f596a7
xor eax, 0x2b756cb6
add eax, 0x98084590
imul eax, eax, 0xeff329c3
imul eax, eax, 0x1cc875eb
mov ecx, 0x94a26c4
xor edx, edx
div ecx
sub eax, 0x9a442416
xor eax, 0x46d65df6
and eax, 0x52e769c
imul eax, eax, 0xd7388e30
mov ecx, 0x13b5bc5e
xor edx, edx
div ecx
add eax, 0xfdda0559
and eax, 0xe732e9df
sub eax, 0x655ca53f
sub eax, 0xa3c83354
imul eax, eax, 0x267fa0af
or eax, 0x222c16e5
xor eax, 0xa89564d3
imul eax, eax, 0x32e6f59c
add eax, 0xe917b4dd
sub eax, 0x1d155dc8
sub eax, 0xfbc6fce3
cmp eax, 0xb3f253f3
jbe 0x1006b8e2
mov edi, dword [esi + 0xf4]
mov ebx, dword [esi + 0xf0]
mov eax, dword [0x100db118]
and eax, dword [0x100db11c]
xor eax, 0x80da5c37
and eax, 0x481601ca
add eax, 0xf3f15434
xor eax, 0x73599bfa
xor eax, 0xe1f91556
imul eax, eax, 0xadf22f89
add eax, 0xec674b41
imul eax, eax, 0xc64621e6
add eax, 0x9959348
and eax, 0xc31a2b3a
add eax, 0x219ead91
xor eax, 0xdc3a3ebd
add eax, 0xa05897a6
imul eax, eax, 0x73da8e14
and eax, 0xccf2482c
imul eax, eax, 0xc46389ec
add eax, 0x2dbd849c
or eax, 0x78fcab06
xor eax, 0x4da38c24
or eax, 0xfec0b828
or eax, 0x6118d85
and eax, 0x24177c56
xor eax, 0xa49efb7b
and eax, 0x98869029
sub eax, 0x90eb9116
add eax, 0xf1e40399
add eax, 0x76a6205
or eax, 0x344f69ba
imul eax, eax, 0x9e5ce6c9
and eax, 0xdf201699
mov ecx, 0xf285948b
xor edx, edx
div ecx
sub eax, 0x2acbba9b
add eax, 0xf20694ea
xor eax, 0x469f2665
mov ecx, 0xd5d12807
xor edx, edx
div ecx
or eax, 0x34514513
add eax, 0x54bf9305
mov ecx, 0x14796625
xor edx, edx
div ecx
sub eax, 0x94c3e3bd
sub eax, 0xd7c23310
mov ecx, 0x1151ff94
xor edx, edx
div ecx
mov ecx, 0x517652c8
xor edx, edx
div ecx
and eax, 0x286842e6
and eax, 0x87e26314
add eax, 0x15d02bad
imul eax, eax, 0x47a61545
sub eax, 0x69e902a2
xor eax, 0xed62b27d
add eax, 0x80464891
and eax, 0x44f88eb6
sub eax, 0x2660b85a
imul eax, eax, 0xf95ef11c
mov ecx, 0xfdea5583
xor edx, edx
div ecx
or eax, 0xbaa1b090
sub eax, 0xb6bb84a
or eax, 0x49603b40
imul eax, eax, 0xff8dbd24
mov ecx, 0x75643fa5
xor edx, edx
div ecx
add eax, 0xa1073f6f
xor eax, 0x7061eb92
or eax, 0xf716e902
add eax, 0x8de99e5e
imul eax, eax, 0xa3285e4d
add eax, 0x2ba54a1e
mov ecx, 0x56077c95
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0xec]
or ecx, 0x8779e13b
and ecx, 0x2ced6adc
xor ecx, 0x472ffc19
or ecx, 0xcacefbc5
and ecx, 0x1e08470e
and ecx, 0xb1655c57
or ecx, 0xe35acccd
mov dword [esi + 0x1c], ecx
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000
call fcn.100860e0
mov edx, dword [esi + 0xf8]
mov ecx, dword [esi + 0x100]
mov eax, dword [esi + 0x1c]
add esp, 0xc
mov dword [ebx], 0
mov dword [edi], 0
mov dword [edx], 1
mov dword [ecx], 0
cmp eax, 0xeef8100d
jae 0x100693a1
jmp 0x100695b2
mov eax, dword [esi + 0xec]
mov ecx, dword [esi + 0xdc]
mov ecx, dword [ecx]
xor edx, edx
sub esp, 0x10
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1000
mov dword [esp + 0xc], 0
call dword [sym.imp.WS2_32.dll_recv]
mov edx, dword [esi + 0xf0]
mov ecx, dword [esi + 0xec]
mov edi, eax
mov eax, dword [esi + 0x104]
mov dword [edx], edi
mov edx, dword [0x100d9107]
mov dword [eax], edx
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10062860
add esp, 8
mov ecx, eax
mov eax, dword [esi + 0x108]
mov dword [eax], ecx
cmp dword [eax], 0
je 0x1006967a
mov eax, dword [esi + 0xdc]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_closesocket]
sub esp, 4
mov dword [esp], 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
mov edx, dword [esi + 0x4c]
mov eax, dword [eax]
mov ecx, dword [ecx]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10066f90
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0x40]
mov dword [eax], ecx
jmp 0x1006b451
sub esp, 0xc
mov dword [esp], 2
mov dword [esp + 4], 6
mov dword [esp + 8], 0x24
call fcn.1002aaa0
add esp, 0xc
mov eax, dword [esi + 0xf8]
cmp dword [eax], 0
je 0x10069ab6
mov eax, dword [0x100db120]
imul eax, dword [0x100db124]
or eax, 0xa3f287b8
xor eax, 0x74315cf2
or eax, 0x4a289db3
mov ecx, 0x868d5d3d
xor edx, edx
div ecx
xor eax, 0x192b7357
sub eax, 0x3321baf6
sub eax, 0x70afe47e
imul eax, eax, 0x95bcb64d
sub eax, 0xc6ebfa05
imul eax, eax, 0x883d3c53
add eax, 0x8b28aa26
xor eax, 0xff10e84d
and eax, 0x6bc9ba01
and eax, 0x20fcc663
or eax, 0x9faf9dad
or eax, 0xe22f8254
or eax, 0x88065ff6
imul eax, eax, 0x97e0cc94
mov ecx, 0xb4056ee
xor edx, edx
div ecx
and eax, 0x639aaf3f
xor eax, 0x6e3cad4
sub eax, 0x9d7370b4
add eax, 0x27e3db23
sub eax, 0xef45c1fc
and eax, 0x844d421
or eax, 0x49aca6c1
imul eax, eax, 0x71beb1d0
add eax, 0x6900760
and eax, 0xc1256f23
or eax, 0x9d1ba3d3
sub eax, 0x5ea97492
sub eax, 0x7793a636
xor eax, 0x12b042a6
and eax, 0x334ae76
and eax, 0xe61d8711
xor eax, 0x2ef94e79
sub eax, 0x97aa5b34
imul eax, eax, 0x7fcd9a23
add eax, 0x926dec61
and eax, 0x6da5a77
or eax, 0x1c2d3e45
xor eax, 0xce04671c
mov ecx, 0x7dd31295
xor edx, edx
div ecx
and eax, 0xc1c86771
xor eax, 0x957c47dc
and eax, 0x20f8eb62
mov ecx, 0xdf1a7bd9
xor edx, edx
div ecx
or eax, 0x63659b61
imul eax, eax, 0xed786779
and eax, 0x754322ad
sub eax, 0x39e10788
sub eax, 0xf552028c
sub eax, 0xf217c7c0
mov ecx, 0x79800eb3
xor edx, edx
div ecx
add eax, 0x209b4abe
and eax, 0xead895fe
add eax, 0x42d142cb
xor eax, 0xa75e3719
add eax, 0x2a7e69b
imul eax, eax, 0xa8786895
sub eax, 0x175be5c5
sub eax, 0x59568f01
imul eax, eax, 0x21371fe2
imul eax, eax, 0x45f9ae3c
or eax, 0xc5879d66
sub eax, 0x20754bf1
add eax, 0x80bb7e74
or eax, 0xacb9a444
or eax, 0xdcb0498a
add eax, 0x2c8d6895
add eax, 0x634c6ed1
imul eax, eax, 0x77220a6e
cmp eax, 0xedd2b592
ja 0x1006b93d
mov ecx, dword [esi + 0x44]
mov eax, dword [0x100db128]
sub eax, dword [0x100db12c]
add eax, 0xee3deada
and eax, 0xb5468f0a
sub eax, 0x5053b147
and eax, 0xa39490b2
imul eax, eax, 0x44d2df8
add eax, 0x4b49b423
xor eax, 0xf2db3cd5
sub eax, 0x9fb70c13
or eax, 0x76db1252
imul eax, eax, 0xb9d6e0be
or eax, 0x802e9553
or eax, 0xa95e068f
mov edi, 0x4e5ad114
xor edx, edx
div edi
or eax, 0x711cad29
or eax, 0x6184e35f
add eax, 0x91aa7d84
mov edi, 0xa7f72515
xor edx, edx
div edi
or eax, 0xe3bd7e50
sub eax, 0xc0b7848a
sub eax, 0x4ea74f7
imul eax, eax, 0xbe12e752
and eax, 0xc32420f5
and eax, 0xfec6ea15
mov edi, 0xe47064d2
xor edx, edx
div edi
mov edi, 0xe8d28a85
xor edx, edx
div edi
or eax, 0xe0037606
add eax, 0xe8374b43
sub eax, 0x2e744d4d
or eax, 0x16663e1e
mov edi, 0xe32d85a8
xor edx, edx
div edi
mov edi, 0xf409777d
xor edx, edx
div edi
or eax, 0xff0479
add eax, 0x9c2fe3d2
xor eax, 0xdc33dd4f
imul eax, eax, 0x8db6dbc6
xor eax, 0xfd34d7ff
sub eax, 0x1fd45a8f
mov edi, 0x9c7f507f
xor edx, edx
div edi
imul eax, eax, 0xc9085ef9
mov edi, 0xb4aac4b2
xor edx, edx
div edi
mov edi, 0xfab773ab
xor edx, edx
div edi
imul eax, eax, 0xd810063f
imul eax, eax, 0xadd734f7
or eax, 0x2949a808
sub eax, 0x4ca9b7a5
add eax, 0x7eecf4f8
imul eax, eax, 0x192ec0e7
and eax, 0x9175bb83
and eax, 0x80ecd99e
add eax, 0x44ba87be
sub eax, 0x1f8635cf
and eax, 0xc4a680e7
or eax, 0x8925a8a1
xor eax, 0xb6919580
sub eax, 0x43e28b26
and eax, 0xc20ff12c
and eax, 0x15b1e45c
mov edi, 0xcf440ab1
xor edx, edx
div edi
imul eax, eax, 0x4d435778
add eax, 0x9b09d16d
mov edi, 0xce83387c
xor edx, edx
div edi
and eax, 0x6ebf4a64
or eax, 0xf7991059
mov edi, 0x1502b05d
xor edx, edx
div edi
mov edi, 0x52414015
xor edx, edx
div edi
mov edx, eax
mov eax, dword [esi + 0xec]
and edx, 0xf77aa1b8
or edx, 0xd516e545
add edx, 0x20a916d4
or edx, 0xe2f158ac
and edx, 0x88f02534
and edx, 0x50e4f72f
or edx, 0x3631fdd1
mov dword [esi + 0x18], edx
mov ecx, dword [ecx]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
call fcn.100549e0
mov ecx, dword [esi + 0xfc]
mov edx, dword [esi + 0x44]
add esp, 0xc
mov eax, dword [esi + 0xec]
mov edi, dword [edx]
mov edi, dword [edi]
mov edi, dword [edi]
sub edi, 5
shr edi, 1
mov edx, dword [edx]
mov edx, dword [edx]
mov dword [edx], edi
add eax, 0x18
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x14
call fcn.100549e0
add esp, 0xc
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.10082711
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x48]
mov eax, dword [eax]
mov dword [eax], ecx
sub esp, 8
mov dword [esp], 0x2a
mov dword [esp + 4], 0x10
call fcn.10052610
add esp, 8
mov eax, dword [esi + 0x18]
cmp eax, 0x39836696
jae 0x10069848
jmp 0x10069ab6
mov eax, dword [0x100db130]
xor eax, dword [0x100db134]
or eax, 0x1a091435
add eax, 0x692e690c
and eax, 0x6c0085a1
or eax, 0xc5e4f48a
add eax, 0x15e120f4
xor eax, 0xa40a6975
imul eax, eax, 0xe27a413f
mov ecx, 0x635069ff
xor edx, edx
div ecx
add eax, 0xf5166fa9
and eax, 0xf65796ef
or eax, 0x5bb827b3
mov ecx, 0x3cf7f67c
xor edx, edx
div ecx
imul eax, eax, 0x9f692d39
add eax, 0xbe31100e
imul eax, eax, 0x6184e92d
sub eax, 0x8e7bfe6d
mov ecx, 0xf373adea
xor edx, edx
div ecx
mov ecx, 0x489f2bcf
xor edx, edx
div ecx
and eax, 0x3a2282d7
mov ecx, 0x5d53a542
xor edx, edx
div ecx
sub eax, 0xfe27af03
or eax, 0xa16a9413
sub eax, 0xe2e9eefa
mov ecx, 0x8d4134fb
xor edx, edx
div ecx
imul eax, eax, 0x685933aa
or eax, 0x503c77b
or eax, 0x9ca83d4e
imul eax, eax, 0x5fdb033a
and eax, 0x196de182
and eax, 0x95a263bb
sub eax, 0x22a786a2
imul eax, eax, 0xf23549be
and eax, 0x2006bd74
add eax, 0xc3e612cc
and eax, 0x956f1da9
or eax, 0x578d5bc6
imul eax, eax, 0xde4056be
sub eax, 0x28ed0596
xor eax, 0x70544b4a
and eax, 0x2cf141f8
sub eax, 0x3071c6b1
imul eax, eax, 0x4f3d24c8
xor eax, 0xd1cc0b8f
imul eax, eax, 0xb34a12e0
mov ecx, 0x2a90a84
xor edx, edx
div ecx
imul eax, eax, 0xb39950f6
imul eax, eax, 0x74be82d0
imul eax, eax, 0x28e75b41
mov ecx, 0x839bf21b
xor edx, edx
div ecx
sub eax, 0x5f301457
and eax, 0xbb5bb707
sub eax, 0xed9add27
xor eax, 0xea2ca8d0
mov ecx, 0xb4d4a437
xor edx, edx
div ecx
xor eax, 0xee3bb344
or eax, 0xe8763ea9
add eax, 0x5589922a
and eax, 0x73e60018
or eax, 0x606db6ab
mov ecx, 0x30b2449c
xor edx, edx
div ecx
xor eax, 0x4c904308
imul eax, eax, 0xd1c7a429
sub eax, 0xadb9b1ba
xor eax, 0x466678d
imul eax, eax, 0x2aa02f3a
xor eax, 0xbf1e5ca0
or eax, 0x408100b9
mov ecx, 0x91e74796
xor edx, edx
div ecx
mov ecx, 0x1eb8ac1c
xor edx, edx
div ecx
xor eax, 0x1741c6e
sub eax, 0x18b51922
and eax, 0x7a547901
cmp eax, 0x94de61ca
jae 0x1006b9e1
mov ecx, dword [esi + 0x10c]
mov eax, dword [0x100db138]
or eax, dword [0x100db13c]
xor eax, 0xee005b96
sub eax, 0x4a69b2c4
imul eax, eax, 0x932b0511
mov edi, 0x5ac4eb61
xor edx, edx
div edi
add eax, 0xf9c0a16a
mov edi, 0xca7fa0aa
xor edx, edx
div edi
mov edi, 0x9b2d0d3
xor edx, edx
div edi
imul eax, eax, 0xc0f6a832
xor eax, 0x9903e8cf
and eax, 0xa22e76ac
or eax, 0xa3fefd47
mov edi, 0xf1f4164e
xor edx, edx
div edi
add eax, 0x83cb2377
xor eax, 0x482e1365
add eax, 0x876f03b1
xor eax, 0x47b64367
xor eax, 0x937d1350
or eax, 0x251977e1
and eax, 0xff380721
imul eax, eax, 0xc2f60f60
imul eax, eax, 0xb33505fb
xor eax, 0x5aad32fe
and eax, 0x11f098e7
sub eax, 0xc33403cd
add eax, 0xe3c4e754
add eax, 0xa5d66757
and eax, 0xedc2a1eb
mov edi, 0xf1a53163
xor edx, edx
div edi
sub eax, 0xa23f1f26
add eax, 0x3e3a6d58
and eax, 0xbac44370
imul eax, eax, 0x565743cc
or eax, 0x1fd07683
sub eax, 0x4d394f50
add eax, 0xa57d37e0
xor eax, 0x8c22e71c
mov edi, 0x87357129
xor edx, edx
div edi
add eax, 0x8fd1d514
xor eax, 0xade6ee09
or eax, 0x484cedf4
imul eax, eax, 0x3bb979c5
or eax, 0x3453ca68
mov edi, 0x4e06af5b
xor edx, edx
div edi
sub eax, 0x5bbc221f
or eax, 0x696aa4ab
or eax, 0xd41ac4ed
add eax, 0x5291ee11
sub eax, 0x611ab3c9
sub eax, 0xc0ab2ee9
and eax, 0xdbb94632
or eax, 0x8b1cceaa
add eax, 0x25363a57
mov edi, 0x5e0023b3
xor edx, edx
div edi
sub eax, 0x1b12a395
and eax, 0xa6df342e
add eax, 0xaf7a3b9e
imul eax, eax, 0x92dece
imul eax, eax, 0x8dd03681
sub eax, 0x9686bae4
and eax, 0xee264d1c
or eax, 0x7ec0205e
sub eax, 0x4a909e3d
mov edi, 0x5463e949
xor edx, edx
div edi
or eax, 0xa84b869e
add eax, 0x4f317bdf
and eax, 0x8b578e31
and eax, 0x48fe91be
imul eax, eax, 0x3142ee49
mov edi, 0x9e2da80a
xor edx, edx
div edi
or eax, 0x205426a6
or eax, 0x26f71f12
add eax, 0x258b8910
mov dword [ecx], 0
cmp eax, 0xa6c83b1a
jae 0x1006b9e1
jmp 0x10069e32
mov ecx, dword [esi + 0xf0]
mov eax, dword [esi + 0x10c]
mov eax, dword [eax]
cmp eax, dword [ecx]
jge 0x1006ac8b
mov eax, dword [0x100db140]
xor eax, dword [0x100db144]
and eax, 0x96af5706
mov ecx, 0x8e7c696e
xor edx, edx
div ecx
mov ecx, 0xe1f33908
xor edx, edx
div ecx
sub eax, 0xf3e1fdde
sub eax, 0x9007fd4c
imul eax, eax, 0xdfaa0173
mov ecx, 0xcbd46711
xor edx, edx
div ecx
and eax, 0xf06345cf
imul eax, eax, 0xc18a4466
imul eax, eax, 0x8afd8661
and eax, 0x5650fc2
add eax, 0x384cdd7
and eax, 0xb5d082c5
sub eax, 0x899330bb
add eax, 0x1a0f4b1c
xor eax, 0x4205cb0c
imul eax, eax, 0x3882030f
and eax, 0xda3e1d95
or eax, 0xe27cc822
and eax, 0xe9f872e2
sub eax, 0x9e1fdd6d
and eax, 0x2f82ccf1
imul eax, eax, 0x97b0e30c
and eax, 0x49dc5c09
or eax, 0x8d96e5cf
mov ecx, 0x837ef47b
xor edx, edx
div ecx
or eax, 0x9b7d44a
sub eax, 0x910336ce
and eax, 0xc32cbf74
or eax, 0x6f094b0b
imul eax, eax, 0xafa55cc8
imul eax, eax, 0x8193022f
imul eax, eax, 0xc7c1604
and eax, 0xa2d8cc42
xor eax, 0xcd5b2726
or eax, 0x466a9949
add eax, 0xbcd00ed2
sub eax, 0xa99496c1
mov ecx, 0x191c347e
xor edx, edx
div ecx
sub eax, 0x2644d750
or eax, 0x92251601
sub eax, 0xe4e4b929
or eax, 0x1b90abb4
and eax, 0xb50fc2df
mov ecx, 0xc28476cd
xor edx, edx
div ecx
or eax, 0xa0d01a8e
add eax, 0x71980379
xor eax, 0x45ce35a7
imul eax, eax, 0xe422e3ff
add eax, 0xff626667
and eax, 0x38a249e
mov ecx, 0xd012f81e
xor edx, edx
div ecx
xor eax, 0x7cbf057f
and eax, 0x158fc231
add eax, 0x39604b10
imul eax, eax, 0x956da3e4
sub eax, 0xad2983c4
and eax, 0xeef5ec25
mov ecx, 0x1866b2a8
xor edx, edx
div ecx
sub eax, 0x4ae01a01
imul eax, eax, 0x2a523196
imul eax, eax, 0xe8fa68a8
or eax, 0xabfb69b9
xor eax, 0xcf11515e
imul eax, eax, 0x596e222d
add eax, 0xbd0a85f1
xor eax, 0xf363c653
sub eax, 0x1bc87337
sub eax, 0xd941ee61
and eax, 0xfab8a48a
sub eax, 0x715382bc
mov ecx, 0xa5ad5b25
xor edx, edx
div ecx
cmp eax, 0x63cb6d7d
ja 0x1006b9f2
mov ecx, dword [esi + 0xf8]
mov eax, dword [0x100db148]
imul eax, dword [0x100db14c]
imul eax, eax, 0xf7268932
add eax, 0x547decc8
mov edi, 0x807f3993
xor edx, edx
div edi
or eax, 0xb037b6ff
or eax, 0xbdab3197
xor eax, 0xe7a9a810
sub eax, 0xea02474
and eax, 0xdcfbd5a6
imul eax, eax, 0xeed2b98f
xor eax, 0xdba77afc
or eax, 0x73901dab
sub eax, 0xb41827c0
and eax, 0x8624ac46
and eax, 0x9ba9d883
add eax, 0xd383c620
xor eax, 0xe85b8731
add eax, 0xfd3c30bb
imul eax, eax, 0x91f90893
add eax, 0x5556ea0f
sub eax, 0xd1736bed
sub eax, 0xbe0f1336
xor eax, 0x255952c5
xor eax, 0xe30eb82c
add eax, 0xa61680e1
xor eax, 0xe8706fce
add eax, 0xe0b0768b
add eax, 0xb61e88e3
or eax, 0xe8772b41
or eax, 0x9c9b3216
sub eax, 0x3955b16a
imul eax, eax, 0x362bd24
xor eax, 0xfc46280e
imul eax, eax, 0x49bb72f6
and eax, 0xfa6939a8
mov edi, 0x82a4f48a
xor edx, edx
div edi
xor eax, 0x42107771
imul eax, eax, 0xefd44686
or eax, 0xdea6bf98
and eax, 0xe26c4ac9
mov edi, 0x8f2c6ade
xor edx, edx
div edi
and eax, 0x1956386a
imul eax, eax, 0x26d37be5
sub eax, 0x29c3351d
sub eax, 0x66c367c4
sub eax, 0x351fb639
xor eax, 0x1ccc428f
mov edi, 0xb2d2b7b4
xor edx, edx
div edi
add eax, 0xe7a38f4c
or eax, 0x20a50184
add eax, 0x99f915dd
sub eax, 0xaaebef3e
and eax, 0x3750463b
xor eax, 0x4f5935e6
mov edi, 0x200ee908
xor edx, edx
div edi
imul eax, eax, 0x2dd9cb21
add eax, 0xd1aa41e7
mov edi, 0xe9b4714f
xor edx, edx
div edi
or eax, 0x6069a379
imul eax, eax, 0x6a45dcbe
imul eax, eax, 0x56390abb
xor eax, 0x15abfe05
xor eax, 0x7344480d
xor eax, 0xdb90d5e0
and eax, 0xf0be459c
mov edi, 0x4342c91b
xor edx, edx
div edi
xor eax, 0xcb484548
or eax, 0xc0d2ed35
imul eax, eax, 0xa74f604b
mov edi, 0x36b2034e
xor edx, edx
div edi
add eax, 0xf95d870f
sub eax, 0x8997d7f3
add eax, 0x12c380fb
cmp dword [ecx], 0
setne cl
mov byte [esi + 0x17], cl
cmp eax, 0x54da70f5
jbe 0x1006b9f2
mov al, byte [esi + 0x17]
test al, 1
jne 0x1006a1c0
jmp 0x1006a1db
mov eax, dword [esi + 0x10c]
cmp dword [eax], 0x2c
jne 0x1006a1db
mov eax, dword [esi + 0x100]
mov dword [eax], 0
mov eax, dword [0x100db150]
and eax, dword [0x100db154]
mov ecx, 0xdacd59ec
xor edx, edx
div ecx
add eax, 0x6f32a1f7
mov ecx, 0xebf850f3
xor edx, edx
div ecx
and eax, 0x7ca12607
mov ecx, 0xfa5b692a
xor edx, edx
div ecx
sub eax, 0x77970bea
and eax, 0x5abeea5d
add eax, 0xa3fc2af7
sub eax, 0x870dab8
add eax, 0x9e715165
and eax, 0x9c9caea3
sub eax, 0x95500e0e
sub eax, 0x92ff631a
mov ecx, 0xe1586a6d
xor edx, edx
div ecx
or eax, 0x341e11d2
or eax, 0x618e273c
sub eax, 0x822b8723
imul eax, eax, 0x3d531f9c
add eax, 0x9cac3548
sub eax, 0x53fd6537
and eax, 0x7cc91571
or eax, 0xaf1942d4
sub eax, 0x65cae67e
add eax, 0x12038d6c
xor eax, 0x4fdd434a
mov ecx, 0x1b968feb
xor edx, edx
div ecx
xor eax, 0x8784eeb5
xor eax, 0x36045a69
imul eax, eax, 0x7d31180d
xor eax, 0xe2b766c
and eax, 0x104d1624
add eax, 0x3c867bfa
mov ecx, 0x7193b350
xor edx, edx
div ecx
mov ecx, 0xa995d9ce
xor edx, edx
div ecx
xor eax, 0x27a455f1
mov ecx, 0x581b3d7a
xor edx, edx
div ecx
xor eax, 0xa369bfaa
sub eax, 0x7bede3e7
xor eax, 0x42b0dedc
or eax, 0x408a1332
xor eax, 0x98cb954d
imul eax, eax, 0x90b31efb
or eax, 0xf469a3c3
xor eax, 0x245d3627
sub eax, 0x160bb17f
xor eax, 0x4be13066
sub eax, 0xf5ea644f
imul eax, eax, 0x790a41bc
mov ecx, 0x988e1bf4
xor edx, edx
div ecx
and eax, 0x8ede4385
sub eax, 0x5a15414c
imul eax, eax, 0xfa466b6
sub eax, 0x1a1e146b
mov ecx, 0xe1f49928
xor edx, edx
div ecx
imul eax, eax, 0x15b0606d
imul eax, eax, 0x753e4d45
imul eax, eax, 0xf4c03147
and eax, 0x74497c7c
sub eax, 0xe55f6b03
imul eax, eax, 0x462a2687
xor eax, 0x51cec8cd
or eax, 0x1d0ec536
imul eax, eax, 0x83ec015e
xor eax, 0x5dfea862
or eax, 0x1ab7a992
mov ecx, 0x57c00492
xor edx, edx
div ecx
sub eax, 0x2b388eba
add eax, 0xab95d527
xor eax, 0xda99fad
or eax, 0xe07194c4
and eax, 0x1229a774
add eax, 0x31764d18
cmp eax, 0x683680c9
ja 0x1006b9f7
mov ebx, dword [esi + 0x100]
mov edi, dword [esi + 0x10c]
mov eax, dword [0x100db158]
or eax, dword [0x100db15c]
and eax, 0xf278b1
and eax, 0x1ec1642a
mov ecx, 0x24dc8438
xor edx, edx
div ecx
mov ecx, 0x30fa52df
xor edx, edx
div ecx
mov ecx, 0xb6f055ed
xor edx, edx
div ecx
xor eax, 0xabd9b20a
and eax, 0xa2559e1
xor eax, 0x34e1b607
xor eax, 0xac5b9a7c
add eax, 0x1abd225f
and eax, 0x51e343d9
imul eax, eax, 0x1ac02ff1
imul eax, eax, 0x4bdeaf82
or eax, 0xb294f016
and eax, 0x13e71547
or eax, 0xb729e457
mov ecx, 0xeb22f389
xor edx, edx
div ecx
mov ecx, 0x74c0dd57
xor edx, edx
div ecx
or eax, 0x12f60f57
and eax, 0xa4b5dcf7
imul eax, eax, 0xd4e21d62
or eax, 0xacf1b019
add eax, 0xe1092a1a
sub eax, 0x27ede750
mov ecx, 0x3c2a85ce
xor edx, edx
div ecx
xor eax, 0xd9353a60
or eax, 0x55c1dfb1
sub eax, 0x4b509115
or eax, 0x36d33bb2
add eax, 0x4e007ddb
add eax, 0x89d07567
or eax, 0xc42b7b90
imul eax, eax, 0xbc04023b
mov ecx, 0xe0a301e8
xor edx, edx
div ecx
xor eax, 0x518e895a
and eax, 0xc9daa891
and eax, 0xab7db381
add eax, 0xe2e8495e
add eax, 0x5dad1db9
xor eax, 0x4ec8402a
add eax, 0xc11297ce
mov ecx, 0x7be9732c
xor edx, edx
div ecx
sub eax, 0x59abab10
or eax, 0x5fc0e4a3
imul eax, eax, 0xeabf1d12
sub eax, 0x53978fe
xor eax, 0xe8203ab0
or eax, 0xcf40fc8c
sub eax, 0xb1e0cafa
sub eax, 0x8d2177
or eax, 0xd0c521eb
xor eax, 0xba6551cc
imul eax, eax, 0xe617ee56
sub eax, 0xd3b8661e
and eax, 0x6fe8be84
xor eax, 0x990fe466
or eax, 0x9790d57f
mov ecx, 0xaae4f9d4
xor edx, edx
div ecx
and eax, 0xaafe592e
xor eax, 0x7a0dcc42
xor eax, 0xb7d38298
xor eax, 0xc2ff2f43
xor eax, 0x6a145552
imul eax, eax, 0x9bc6496f
imul eax, eax, 0x8892332d
or eax, 0xcdd67bec
imul eax, eax, 0x2a19c6c4
sub eax, 0x5c0cb7b1
imul eax, eax, 0x67c5c1e
mov ecx, 0x3169c984
xor edx, edx
div ecx
mov ecx, dword [esi + 0xfc]
mov edx, dword [esi + 0xec]
add eax, 0x63089bdb
add eax, 0x8c51436b
mov ebx, dword [ebx]
movzx ecx, byte [ecx + ebx]
mov edi, dword [edi]
movsx ebx, byte [edx + edi]
xor ebx, ecx
mov ecx, dword [esi + 0x100]
mov byte [edx + edi], bl
mov edx, dword [ecx]
add edx, 1
mov dword [ecx], edx
cmp dword [ecx], 0x14
setge cl
mov byte [esi + 0x16], cl
cmp eax, 0xc4d40c2d
je 0x1006b9f7
mov al, byte [esi + 0x16]
test al, 1
jne 0x1006a58e
jmp 0x1006a922
mov eax, dword [0x100db160]
imul eax, dword [0x100db164]
imul eax, eax, 0x51fa192e
xor eax, 0x5afa6b4c
and eax, 0x9d72b8b6
xor eax, 0x3ba42b45
imul eax, eax, 0xe50a501c
xor eax, 0x60fad37
sub eax, 0x13e44842
mov ecx, 0xa9a46af5
xor edx, edx
div ecx
or eax, 0xb016bb43
mov ecx, 0xea88aa0d
xor edx, edx
div ecx
or eax, 0x6f41d764
or eax, 0x2159051a
mov ecx, 0x2f07d6e7
xor edx, edx
div ecx
add eax, 0x50f5c56
add eax, 0x50bd2db6
sub eax, 0xee819640
or eax, 0xdaf7f39a
add eax, 0x80b88816
or eax, 0x3a27b555
xor eax, 0x876e7803
sub eax, 0xfef38601
or eax, 0x699de77d
add eax, 0xbad15e67
imul eax, eax, 0x380309d7
mov ecx, 0x1ebeb0a1
xor edx, edx
div ecx
and eax, 0x599b6e89
mov ecx, 0x3e1440f1
xor edx, edx
div ecx
imul eax, eax, 0xedb38e7f
imul eax, eax, 0xb54b6ceb
sub eax, 0xb3189813
and eax, 0xb41e7308
add eax, 0x5ee9b20d
mov ecx, 0x27cc2bf2
xor edx, edx
div ecx
or eax, 0x4c8ebda3
imul eax, eax, 0x796f03f5
imul eax, eax, 0x8b44107f
mov ecx, 0x26911010
xor edx, edx
div ecx
add eax, 0xd06fb913
sub eax, 0xbfa049aa
and eax, 0x32b3722a
and eax, 0xc76e3bc1
mov ecx, 0xb66fc82b
xor edx, edx
div ecx
xor eax, 0x766c47d3
sub eax, 0x13302e5c
or eax, 0x2bcbc33a
sub eax, 0x4d57cc6e
add eax, 0x33d77a1d
mov ecx, 0xa21b39b2
xor edx, edx
div ecx
mov ecx, 0x6ea8144b
xor edx, edx
div ecx
imul eax, eax, 0x281b12cb
xor eax, 0x489c23b1
and eax, 0x76d5d17b
mov ecx, 0x655ffdaa
xor edx, edx
div ecx
and eax, 0xac7fbf59
add eax, 0xfa7f5d45
and eax, 0xef240eb4
or eax, 0x410d094a
add eax, 0x61843f4c
mov ecx, 0xdcb8f2ee
xor edx, edx
div ecx
sub eax, 0xd30d3cbd
and eax, 0x9591a3f8
imul eax, eax, 0x16f1dfd8
mov ecx, 0x8b607a04
xor edx, edx
div ecx
or eax, 0xf5a941bf
or eax, 0x11894b5b
or eax, 0x2d685c39
imul eax, eax, 0x28f8dd23
xor eax, 0xc53f0a7a
sub eax, 0x49687dee
imul eax, eax, 0xf048682e
sub eax, 0xd78d8126
xor eax, 0xd725c740
cmp eax, 0x3228bc51
je 0x1006ba2c
mov eax, dword [0x100db168]
xor eax, dword [0x100db16c]
add eax, 0xef71b76
or eax, 0x291ab015
imul eax, eax, 0xaad041de
add eax, 0x3aa06144
imul eax, eax, 0x1a34e072
and eax, 0xa26643a4
sub eax, 0xec007b23
xor eax, 0x4d04a71b
add eax, 0xd72d7306
add eax, 0x1dba9637
add eax, 0x6986a4e
imul eax, eax, 0xfe788d93
or eax, 0x1bf8fb96
mov ecx, 0xce6b5fb6
xor edx, edx
div ecx
mov ecx, 0xa3e77a8f
xor edx, edx
div ecx
imul eax, eax, 0xce04e673
and eax, 0x8ec67b6
sub eax, 0x1ffc75b3
or eax, 0x757197a5
and eax, 0xc4d374e2
xor eax, 0xb124e526
or eax, 0x7ac5a0c2
and eax, 0xc44dd331
sub eax, 0x2b60c0
sub eax, 0xee949fb9
xor eax, 0xf056ec4b
and eax, 0xd753e076
sub eax, 0x86053c3f
imul eax, eax, 0x27e5e42b
mov ecx, 0x6fe2d963
xor edx, edx
div ecx
imul eax, eax, 0x4f58377
sub eax, 0x2d0585c
sub eax, 0x9017c8e6
or eax, 0x6d20665e
imul eax, eax, 0x20bb9d1d
imul eax, eax, 0xd53290ac
sub eax, 0x9cdc43a4
sub eax, 0xc5294ac0
sub eax, 0xbc7c0506
add eax, 0x6565cf73
mov ecx, 0xb2753e8c
xor edx, edx
div ecx
xor eax, 0x2f10da14
imul eax, eax, 0x90e12ff1
add eax, 0x1b695f2b
add eax, 0xddad6c6c
xor eax, 0x95d2abec
add eax, 0xb015da20
xor eax, 0x4634bdb3
mov ecx, 0x19549093
xor edx, edx
div ecx
sub eax, 0x35129ad1
or eax, 0x38cce3ba
xor eax, 0xfa87dadc
and eax, 0x91118061
add eax, 0xa771e01a
and eax, 0x9c60fa9c
xor eax, 0x9cd4d072
add eax, 0x319d032f
mov ecx, 0x1184b8bb
xor edx, edx
div ecx
mov ecx, 0x1e6a508
xor edx, edx
div ecx
add eax, 0x5b66e40c
and eax, 0x66ff5831
mov ecx, 0x33e37b4c
xor edx, edx
div ecx
sub eax, 0x329c7a89
xor eax, 0x50296924
add eax, 0x97e4cff9
add eax, 0x95abb82e
or eax, 0x4a1292f6
sub eax, 0x9bc9817e
xor eax, 0x66facedf
xor eax, 0xda9ac0ad
sub eax, 0x4acf240
mov ecx, 0xaeb04c68
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x100]
mov dword [esi + 0x10], ecx
mov dword [eax], 0
sub esp, 4
mov dword [esp], 0xc
call fcn.10013a80
mov eax, dword [esi + 0x10]
add esp, 4
cmp eax, 0x771e2c05
jae 0x1006a74c
jmp 0x1006a922
mov eax, dword [0x100db170]
sub eax, dword [0x100db174]
add eax, 0xb46bb93e
or eax, 0xd45cd2e8
add eax, 0x4f66942f
or eax, 0x85debec9
add eax, 0xc76c34e1
add eax, 0xeac10f3c
mov ecx, 0xe0187254
xor edx, edx
div ecx
mov ecx, 0xab88f3c0
xor edx, edx
div ecx
sub eax, 0xb8cfe3ea
and eax, 0x5e9a22db
xor eax, 0x635a1b7f
xor eax, 0xa0557675
imul eax, eax, 0x29ea9af9
imul eax, eax, 0x2d3d7c17
and eax, 0xe1e0906e
sub eax, 0x61f14aba
xor eax, 0x22177abd
or eax, 0xb68675c8
mov ecx, 0x602a12d8
xor edx, edx
div ecx
add eax, 0x8ddd593
mov ecx, 0xc118d3b4
xor edx, edx
div ecx
xor eax, 0xb5011cd7
imul eax, eax, 0xbbd87171
imul eax, eax, 0xd436822a
and eax, 0x6ccfb58c
mov ecx, 0x180d5b12
xor edx, edx
div ecx
xor eax, 0xdd782e91
add eax, 0x1bce9965
sub eax, 0x6d386762
add eax, 0xbc07ffc2
or eax, 0xc135da05
add eax, 0x8a941ba4
or eax, 0xbb005a12
sub eax, 0x1f2e73d2
xor eax, 0xcb23d2c9
sub eax, 0x968dc652
and eax, 0xda038ae3
or eax, 0x733bdddb
sub eax, 0x40ed5cb6
sub eax, 0x2cb30c2c
mov ecx, 0xdb99b442
xor edx, edx
div ecx
xor eax, 0x4fa27d9f
add eax, 0xb20771de
and eax, 0x3c882fb
add eax, 0x7b4f400b
xor eax, 0xdf7f4e53
or eax, 0x4ffc9559
xor eax, 0x790b7d3a
xor eax, 0xbd8ad481
add eax, 0x9795c64d
and eax, 0x1e6e2a7a
or eax, 0xee4ba402
mov ecx, 0x62748f5f
xor edx, edx
div ecx
imul eax, eax, 0xc82e2b8e
and eax, 0x8d7b935b
imul eax, eax, 0x398faabb
add eax, 0x8e098814
and eax, 0xdbba6d5b
and eax, 0x1d59e1bc
mov ecx, 0x18f84b55
xor edx, edx
div ecx
xor eax, 0x3b61201e
and eax, 0xe7a6d4d5
xor eax, 0x41d6d980
imul eax, eax, 0x53a1e7ec
and eax, 0xba2d8a73
sub eax, 0x7db94340
add eax, 0x5ab92f16
or eax, 0x41fab7ff
and eax, 0x4f4a68b
mov ecx, 0xa147de79
xor edx, edx
div ecx
add eax, 0x5991764a
sub eax, 0x6a5b5d0b
cmp eax, 0x3c9a475b
jbe 0x1006ba4f
mov eax, dword [0x100db178]
imul eax, dword [0x100db17c]
and eax, 0x3bc252ca
or eax, 0x63dfb1e9
xor eax, 0x1bf2bcb7
mov ecx, 0xe9273226
xor edx, edx
div ecx
and eax, 0x657d6b3b
or eax, 0x6fccfd1
imul eax, eax, 0xbdade841
imul eax, eax, 0xe31ad09f
imul eax, eax, 0x6df2ba24
or eax, 0xcc47d843
imul eax, eax, 0x3cdb21be
sub eax, 0xaa5f7daa
and eax, 0x1a209bd9
sub eax, 0x6c1b3018
or eax, 0xb176ae4e
add eax, 0x94df11fd
and eax, 0x92073b26
and eax, 0xe8fba6f6
sub eax, 0xdf233e96
sub eax, 0xe91831d5
xor eax, 0xe38a0957
or eax, 0xfd6db1f5
mov ecx, 0xcbb12ddd
xor edx, edx
div ecx
mov ecx, 0x43e6749d
xor edx, edx
div ecx
imul eax, eax, 0xb9e289e8
mov ecx, 0x2042c0e0
xor edx, edx
div ecx
imul eax, eax, 0x9c37c60e
and eax, 0x430f05f
imul eax, eax, 0x7dfac3d5
sub eax, 0xa6a958ce
and eax, 0x52c60a0f
xor eax, 0xc87c0f76
xor eax, 0xe605abbe
and eax, 0x112269dd
and eax, 0x9497d5b7
add eax, 0x10573214
sub eax, 0x4dc7120b
xor eax, 0x9818979e
xor eax, 0x43131b28
mov ecx, 0xbce6613c
xor edx, edx
div ecx
add eax, 0x86227528
xor eax, 0x4fb087ab
or eax, 0x9c0c096
add eax, 0xf72d4686
or eax, 0xab08033d
sub eax, 0xd29ddd27
sub eax, 0xd96925f7
xor eax, 0x43dd9a4b
sub eax, 0x483755e2
mov ecx, 0x9f40f827
xor edx, edx
div ecx
xor eax, 0xb5835d57
and eax, 0x71c9226a
mov ecx, 0x9e19cc2b
xor edx, edx
div ecx
imul eax, eax, 0x7602550d
add eax, 0x1fac6f83
xor eax, 0x4489f0a0
or eax, 0x89862790
xor eax, 0x3ccc0c5e
imul eax, eax, 0x95170fa2
or eax, 0xbc48e2c0
sub eax, 0x9b2eedbd
imul eax, eax, 0xc0546a74
sub eax, 0x66736166
add eax, 0xc5903a97
xor eax, 0x3379d1fa
and eax, 0xaf62f959
sub eax, 0x7a8610c7
sub eax, 0xd6cefeb3
mov ecx, 0x79c80dce
xor edx, edx
div ecx
or eax, 0x1290ce24
and eax, 0xe75b7bc3
and eax, 0xf44cf9ab
cmp eax, 0x78b939e4
je 0x1006ba4f
jmp 0x1006ac79
mov eax, dword [esi + 0x10c]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x10069e32
mov ecx, dword [esi + 0xec]
mov edi, dword [esi + 0xf4]
mov eax, dword [esi + 0xf0]
mov edx, dword [esi + 0x48]
mov ebx, dword [esi + 0xf8]
mov dword [ebx], 0
mov edx, dword [edx]
mov edx, dword [edx]
add edx, dword [edi]
mov eax, dword [eax]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.100855e0
mov edx, dword [esi + 0xf0]
mov ecx, dword [esi + 0xf4]
mov eax, dword [esi + 0xec]
add esp, 0xc
mov edx, dword [edx]
add edx, dword [ecx]
mov dword [ecx], edx
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000
call fcn.100860e0
add esp, 0xc
mov eax, dword [0x100db180]
add eax, dword [0x100db184]
and eax, 0x4904cd97
sub eax, 0x4e025ee
or eax, 0x2a9b57a0
mov ecx, 0x12f54f62
xor edx, edx
div ecx
xor eax, 0xbb685dca
add eax, 0x6d0fe2b
add eax, 0x87e54764
or eax, 0x42c3468f
or eax, 0xaeef3e3e
xor eax, 0x4c137666
or eax, 0x90733e89
add eax, 0x28f827bb
or eax, 0x325b145a
xor eax, 0x3b04b4c2
imul eax, eax, 0xeeebab22
xor eax, 0xe7d4ff5b
or eax, 0x6a7110d
or eax, 0xadb383bf
or eax, 0x8f396658
xor eax, 0x918a107d
mov ecx, 0x62ae4045
xor edx, edx
div ecx
xor eax, 0xe1c2c53a
sub eax, 0x70132143
mov ecx, 0x30087134
xor edx, edx
div ecx
sub eax, 0x83c9f952
mov ecx, 0x642dcb97
xor edx, edx
div ecx
or eax, 0x3b1cc7f1
or eax, 0x523db255
or eax, 0x9e620261
or eax, 0x247286a7
imul eax, eax, 0xab17cd12
or eax, 0x3eed6991
and eax, 0xb32ecfe
and eax, 0x61f0867a
and eax, 0x8cc109cb
xor eax, 0xe3d7cb07
and eax, 0x1ca6f3a5
or eax, 0xe46af9c2
imul eax, eax, 0xbfa3c4c3
xor eax, 0x2f7fb55e
add eax, 0x6972d3be
and eax, 0x6b695e24
mov ecx, 0x35757109
xor edx, edx
div ecx
xor eax, 0x98df3a23
imul eax, eax, 0xa40efdff
xor eax, 0xfadd3192
xor eax, 0xf5dae243
add eax, 0x3c36cdd3
mov ecx, 0xcc41868b
xor edx, edx
div ecx
sub eax, 0x9edc9214
add eax, 0xf6820cf9
and eax, 0xaba82712
imul eax, eax, 0xbafef39f
add eax, 0x62f6cd06
and eax, 0x152016fc
add eax, 0x3ab9879d
imul eax, eax, 0x4c1e0fe0
add eax, 0xdd1fe2a
mov ecx, 0x8b36c4ce
xor edx, edx
div ecx
mov ecx, 0xf5de06d8
xor edx, edx
div ecx
and eax, 0x28bee481
imul eax, eax, 0xb20cdf24
or eax, 0x9e5066fa
mov ecx, 0x12035948
xor edx, edx
div ecx
or eax, 0x39bf406a
add eax, 0x2618e407
xor eax, 0xd2ca9bb1
imul eax, eax, 0xf563caa6
and eax, 0xb311025b
sub eax, 0xb0f0c446
xor eax, 0xe00f8b49
xor eax, 0xf55458b5
cmp eax, 0xce43d106
je 0x1006ba54
mov ecx, dword [esi + 0xf0]
mov eax, dword [0x100db188]
add eax, dword [str.nE]
or eax, 0xd5855f6c
or eax, 0x2399abd
or eax, 0x945a492e
xor eax, 0xc075f517
mov edi, 0xb1e289ce
xor edx, edx
div edi
imul eax, eax, 0x29260290
xor eax, 0xa34b3f2f
and eax, 0x4b4cd4b6
and eax, 0x18fbf57e
add eax, 0xbaa16627
xor eax, 0x789f3acc
mov edi, 0x62f1efc5
xor edx, edx
div edi
or eax, 0x459809a4
imul eax, eax, 0x63977b40
xor eax, 0xf915bbd9
and eax, 0xd376bfd6
or eax, 0x4e08c1d0
and eax, 0xc30d8a46
or eax, 0x8e6c5ca5
sub eax, 0xd10f215b
sub eax, 0x4a9e5f3e
mov edi, 0x722308b6
xor edx, edx
div edi
or eax, 0x720e40b9
or eax, 0x3060c9e4
and eax, 0xc48838ad
and eax, 0x8cee1e62
imul eax, eax, 0xbae767c1
add eax, 0x7395696e
imul eax, eax, 0xd0274b
xor eax, 0x216d4283
imul eax, eax, 0x8d0a0f3d
xor eax, 0x7e0e4df6
mov edi, 0xce8dcb6
xor edx, edx
div edi
xor eax, 0x12d4735a
mov edi, 0x6c5b547c
xor edx, edx
div edi
xor eax, 0x461633f0
add eax, 0xc2d9d8b2
mov edi, 0x626e9fba
xor edx, edx
div edi
mov edi, 0x3199ce1b
xor edx, edx
div edi
sub eax, 0x2e9092ea
or eax, 0xd351c05d
mov edi, 0xb71781dc
xor edx, edx
div edi
imul eax, eax, 0x51f133a7
sub eax, 0x5d575c55
imul eax, eax, 0x217d196b
xor eax, 0xa8e3c8d8
mov edi, 0xfdc8ff3b
xor edx, edx
div edi
xor eax, 0x5f1b864a
xor eax, 0x3917f422
add eax, 0xfb512ecf
xor eax, 0x89509b90
mov edi, 0x25f629e6
xor edx, edx
div edi
add eax, 0xc95888b4
sub eax, 0xf7669794
xor eax, 0xea6e2273
add eax, 0x3b6c6f1e
imul eax, eax, 0x8a354ef5
xor eax, 0xc7e684cd
and eax, 0xe9c45a77
mov edi, 0x93dd359e
xor edx, edx
div edi
xor eax, 0x11423117
mov edi, 0x8b4cfd71
xor edx, edx
div edi
and eax, 0xfef36634
and eax, 0xdaadefa9
or eax, 0xbb506810
or eax, 0x7aac20f2
or eax, 0xcf4de7fa
and eax, 0x8d210b34
mov edi, 0x2f064d8f
xor edx, edx
div edi
sub eax, 0x9a4dadae
and eax, 0x5449b1ec
and eax, 0x98c65bab
cmp dword [ecx], 0
setg cl
mov byte [esi + 0xf], cl
cmp eax, 0x8c3f686b
jae 0x1006aeac
mov al, byte [esi + 0xf]
test al, 1
jne 0x100695b2
jmp 0x1006b085
mov eax, dword [0x100db190]
or eax, dword [0x100db194]
sub eax, 0x771414f2
xor eax, 0x3943be19
sub eax, 0xc50b058e
mov ecx, 0x2e489e72
xor edx, edx
div ecx
or eax, 0xa0666fef
xor eax, 0x631e30b9
xor eax, 0xc9f8248f
xor eax, 0x6cc63c04
or eax, 0xe76b8b98
or eax, 0x467e99ad
mov ecx, 0x19bc6192
xor edx, edx
div ecx
or eax, 0x3b7dc943
xor eax, 0xc0e54bc1
add eax, 0xcfaae52b
or eax, 0x1412ab54
mov ecx, 0x733d1a48
xor edx, edx
div ecx
or eax, 0x57cb4d7f
or eax, 0x2989d488
xor eax, 0xcae58d63
mov ecx, 0xf133f5f6
xor edx, edx
div ecx
mov ecx, 0x10cb64a8
xor edx, edx
div ecx
xor eax, 0x9f04eb6a
sub eax, 0x155db773
and eax, 0x76850ba9
mov ecx, 0x956053d8
xor edx, edx
div ecx
mov ecx, 0x8d7be1c2
xor edx, edx
div ecx
mov ecx, 0x15450110
xor edx, edx
div ecx
mov ecx, 0x91bb5713
xor edx, edx
div ecx
add eax, 0x36a032da
xor eax, 0x6f00da1a
sub eax, 0xa7b2350
imul eax, eax, 0x9230d113
sub eax, 0xd6d78f5
mov ecx, 0x8c712d52
xor edx, edx
div ecx
mov ecx, 0x8de578f
xor edx, edx
div ecx
or eax, 0x4c8588eb
add eax, 0x2c172a35
or eax, 0x7e5432b2
or eax, 0x3312b47b
add eax, 0x8e319d86
imul eax, eax, 0x6f246384
sub eax, 0x1d0e770
mov ecx, 0xdb1c095e
xor edx, edx
div ecx
xor eax, 0x5c47ce00
and eax, 0xe71a18f5
mov ecx, 0x422980b1
xor edx, edx
div ecx
or eax, 0xcc3af09
or eax, 0x24848260
add eax, 0x3ebf265e
xor eax, 0x17a50e59
mov ecx, 0x4e66b265
xor edx, edx
div ecx
add eax, 0xcbd14b1
imul eax, eax, 0x55ac1b47
imul eax, eax, 0xfeb08d2c
imul eax, eax, 0x3dfc21a1
and eax, 0x43537f2d
sub eax, 0x5e3dae7b
xor eax, 0xa924cc0d
and eax, 0x28b9039e
mov ecx, 0x72688077
xor edx, edx
div ecx
add eax, 0x9be5bf3f
mov ecx, 0x7f2115b7
xor edx, edx
div ecx
and eax, 0x8d788cca
sub eax, 0x4c2e8184
and eax, 0x43d4c48
or eax, 0x77f42e7f
mov ecx, 0x575bfe5b
xor edx, edx
div ecx
mov ecx, 0xc5400bfe
xor edx, edx
div ecx
or eax, 0xe9ab2fa9
and eax, 0x126198a
xor eax, 0xe3f78a5b
add eax, 0x4aa7f450
cmp eax, 0x7087ff07
jae 0x1006ba59
mov edi, dword [esi + 0x44]
mov eax, dword [0x100db198]
imul eax, dword [0x100db19c]
add eax, 0xf0583adc
or eax, 0xfc83c782
mov ecx, 0xe7e76eb3
xor edx, edx
div ecx
imul eax, eax, 0x22bde162
xor eax, 0x8da4e548
imul eax, eax, 0xbc06e156
and eax, 0x4e5c223d
or eax, 0x23ae4d01
or eax, 0x73fbca7e
and eax, 0x26dd5213
mov ecx, 0x9b1dbe8f
xor edx, edx
div ecx
mov ecx, 0x5ab7d883
xor edx, edx
div ecx
or eax, 0xe6b60754
mov ecx, 0x20b82093
xor edx, edx
div ecx
mov ecx, 0xcd43ab28
xor edx, edx
div ecx
and eax, 0x8a5769a0
add eax, 0x85d85058
add eax, 0xd3e3431
or eax, 0xae85003a
imul eax, eax, 0x5b1da667
xor eax, 0xefa7d51c
imul eax, eax, 0x219629a5
and eax, 0xe022c0a1
sub eax, 0x63906fd6
or eax, 0x85c6585
xor eax, 0x4d6d6d03
imul eax, eax, 0x630918da
imul eax, eax, 0x73aabf9a
add eax, 0xf5c6b591
imul eax, eax, 0x1962ac77
xor eax, 0xe3a432b6
sub eax, 0x4d8b7e22
and eax, 0x321c4907
imul eax, eax, 0x2fda70f1
xor eax, 0xb75b7bb3
mov ecx, 0x9665f236
xor edx, edx
div ecx
xor eax, 0x906b953
add eax, 0x82d31ef3
add eax, 0x3d66a678
mov ecx, 0xae889ba
xor edx, edx
div ecx
or eax, 0x394b0b50
mov ecx, 0x60e5e65b
xor edx, edx
div ecx
add eax, 0x9f5d8818
mov ecx, 0xf0a9be96
xor edx, edx
div ecx
sub eax, 0xe7995a9c
add eax, 0x4272fb44
imul eax, eax, 0xbc085123
add eax, 0xde3f3e59
sub eax, 0x1ff5f2b1
xor eax, 0x5e9f6a8c
mov ecx, 0x839e2644
xor edx, edx
div ecx
and eax, 0x634c0a88
add eax, 0xc6e62a6c
and eax, 0xebffd19b
and eax, 0x624c0673
sub eax, 0xc9198f7f
imul eax, eax, 0x766010a
and eax, 0x95b67636
sub eax, 0xf577b26b
imul eax, eax, 0x95d4bc1b
and eax, 0x18218f4f
add eax, 0x10956cf9
add eax, 0x3ad715f8
mov ecx, 0xbd7737f9
xor edx, edx
div ecx
imul eax, eax, 0xad105026
xor eax, 0xfb1ee1e9
add eax, 0xfa006cd5
or eax, 0x9f387a05
and eax, 0x6668af74
xor eax, 0xf83d7009
sub eax, 0x87b9c1bc
mov ecx, 0x45df19c2
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0xdc]
mov dword [esi + 8], ecx
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov edx, dword [esi + 0x48]
mov ecx, dword [esi + 0x40]
mov eax, dword [esi + 8]
mov edi, dword [edi]
mov edi, dword [edi]
mov ebx, dword [edi]
sub ebx, 0x2c
mov dword [edi], ebx
mov edi, dword [edx]
mov edi, dword [edi]
add edi, 0x2c
mov edx, dword [edx]
mov dword [edx], edi
mov dword [ecx], 1
cmp eax, 0x4b42f1ac
je 0x1006ba59
jmp 0x1006b451
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0x148]
xor ecx, ebp
call fcn.1008271f
mov eax, dword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, dword [esi + 0x60]
mov ebx, dword [esi + 0x5c]
sub esp, 8
mov eax, esp
mov dword [eax + 4], 0x24
mov dword [eax], 0x20
call fcn.10050680
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x64]
add esp, 8
mov eax, dword [0x100d91bc]
mov dword [ecx + 7], eax
movsd xmm0, qword [0x100d91b5]
movsd qword [ecx], xmm0
mov eax, dword [0x100d9165]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0x130]
movsd xmm0, qword [str.e_f_]
movsd qword [ebx], xmm0
mov bx, word [0x100d9195]
mov word [edi + 8], bx
movsd xmm0, qword [0x100d918d]
movsd qword [edi], xmm0
mov di, word [0x100d911c]
mov word [edx + 8], di
movsd xmm0, qword [0x100d9114]
movsd qword [edx], xmm0
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0x68]
mov ecx, dword [esi + 0x5c]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x130]
mov dword [edx], edi
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0x6c]
mov ecx, dword [esi + 0x60]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x130]
mov dword [edx], edi
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0x70]
mov ecx, dword [esi + 0x64]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x130]
mov dword [edx], edi
mov edx, dword [eax]
xor edi, edi
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10054a70
mov ecx, dword [esi + 0x74]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x78]
mov dword [ecx], edx
mov ecx, dword [0x100d91ff]
mov dword [eax], ecx
mov ecx, dword [0x100d9203]
mov dword [eax + 4], ecx
sub esp, 4
mov dword [esp], eax
call fcn.1005eea0
add esp, 4
jmp 0x10067b61
mov eax, dword [esi + 0x68]
mov ecx, dword [esi + 0x84]
sub esp, 8
mov dword [esp], 0x202
mov dword [esp + 4], ecx
call dword [eax]
mov ecx, dword [esi + 0x88]
mov eax, dword [esi + 0x90]
mov dword [ecx], 1
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20
call fcn.100860e0
mov eax, dword [esi + 0x90]
add esp, 0xc
mov dword [eax + 4], 2
mov dword [eax + 8], 1
jmp 0x10067ef8
jmp 0x100682dc
mov ecx, dword [esi + 0x8c]
mov edx, dword [esi + 0x98]
mov eax, dword [esi + 0x70]
mov edi, dword [esi + 0x94]
mov edi, dword [edi]
mov edi, dword [edi + 0x18]
mov dword [edx], edi
mov eax, dword [eax]
mov edx, dword [edx]
add edx, 4
sub esp, 0x10
mov dword [esp], 2
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0x16
call eax
mov ecx, dword [esi + 0x8c]
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], ecx
call eax
mov ecx, dword [esi + 0x9c]
mov edx, eax
mov eax, dword [esi + 0x138]
mov dword [ecx], edx
mov ecx, dword [ecx]
mov eax, dword [eax]
mov dword [eax], ecx
jmp 0x1006869a
mov edi, dword [esi + 0xd4]
mov ebx, dword [esi + 0xd0]
mov edx, dword [esi + 0xb4]
mov eax, dword [esi + 0xa0]
mov ecx, dword [0x100d91ec]
mov dword [eax + 3], ecx
mov ecx, dword [0x100d91e9]
mov dword [eax], ecx
mov ecx, dword [esi + 0xa4]
mov eax, dword [esi + 0xa8]
movsd xmm0, qword [0x100d920e]
movsd qword [ecx], xmm0
mov cl, byte [0x100d91f8]
mov byte [eax + 4], cl
mov ecx, dword [0x100d91f4]
mov dword [eax], ecx
mov ecx, dword [esi + 0xac]
mov al, byte [0x100d921f]
mov byte [ecx + 4], al
mov eax, dword [0x100d921b]
mov dword [ecx], eax
mov eax, dword [esi + 0xb0]
mov ecx, dword [0x100d91d4]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0xa0]
movsd xmm0, qword [0x100d91cc]
movsd qword [eax], xmm0
mov ax, word [0x100d91e1]
mov word [edx + 4], ax
mov eax, dword [0x100d91dd]
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov ecx, dword [esi + 0xa4]
mov edx, dword [esi + 0xb8]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov ecx, dword [esi + 0xa8]
mov edx, dword [esi + 0xbc]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0xc0]
mov ecx, dword [esi + 0xac]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov edx, dword [esi + 0xc4]
mov ecx, dword [esi + 0xb0]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x130]
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 0
call fcn.10054a70
mov ecx, dword [esi + 0xc8]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x130]
mov dword [ecx], edx
mov edx, dword [eax]
xor ecx, ecx
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0xb4]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10054a70
mov edx, dword [esi + 0x138]
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0xcc]
mov dword [eax], ecx
mov ecx, dword [esi + 0xd8]
mov dword [ebx], 0x1000
mov dword [edi], 0
mov edx, dword [edx]
mov edx, dword [edx]
mov dword [ecx + 4], edx
mov word [ecx], 2
sub esp, 4
mov dword [esp], 0x50
call dword [eax]
mov ecx, dword [esi + 0xd8]
mov edx, eax
mov eax, dword [esi + 0xb8]
mov word [ecx + 2], dx
xor ecx, ecx
sub esp, 0xc
mov dword [esp], 2
mov dword [esp + 4], 1
mov dword [esp + 8], 0
call dword [eax]
mov edx, dword [esi + 0xdc]
mov ecx, dword [esi + 0xd8]
mov edi, eax
mov eax, dword [esi + 0xbc]
mov dword [edx], edi
mov eax, dword [eax]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x10
call eax
mov ecx, eax
mov eax, dword [esi + 0xd4]
mov dword [eax], ecx
jmp 0x10068a7b
jmp 0x10068e87
mov edi, dword [esi + 0xf0]
mov eax, dword [esi + 0xec]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000
call fcn.100860e0
mov edx, dword [esi + 0xf4]
mov ecx, dword [esi + 0xf8]
mov eax, dword [esi + 0x100]
add esp, 0xc
mov dword [edi], 0
mov dword [edx], 0
mov dword [ecx], 1
mov dword [eax], 0
jmp 0x100693a1
mov ecx, dword [esi + 0x44]
mov eax, dword [esi + 0xec]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
call fcn.100549e0
mov ecx, dword [esi + 0xfc]
mov edx, dword [esi + 0x44]
add esp, 0xc
mov eax, dword [esi + 0xec]
mov edi, dword [edx]
mov edi, dword [edi]
mov edi, dword [edi]
sub edi, 5
shr edi, 1
mov edx, dword [edx]
mov edx, dword [edx]
mov dword [edx], edi
add eax, 0x18
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x14
call fcn.100549e0
add esp, 0xc
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.10082711
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x48]
mov eax, dword [eax]
mov dword [eax], ecx
sub esp, 8
mov dword [esp], 0x2a
mov dword [esp + 4], 0x10
call fcn.10052610
add esp, 8
jmp 0x10069848
mov eax, dword [esi + 0x10c]
mov dword [eax], 0
jmp 0x10069c72
jmp 0x10069ff7
mov eax, dword [esi + 0x100]
mov ecx, dword [esi + 0xec]
mov edx, dword [esi + 0x10c]
mov edi, dword [esi + 0xfc]
mov ebx, dword [eax]
movzx edi, byte [edi + ebx]
mov edx, dword [edx]
movsx ebx, byte [ecx + edx]
xor ebx, edi
mov byte [ecx + edx], bl
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x1006a38f
mov eax, dword [esi + 0x100]
mov dword [eax], 0
sub esp, 4
mov dword [esp], 0xc
call fcn.10013a80
add esp, 4
jmp 0x1006a74c
jmp 0x1006aacb
jmp 0x1006aeac
mov eax, dword [esi + 0xdc]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov edx, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
mov eax, dword [esi + 0x40]
mov edx, dword [edx]
mov edx, dword [edx]
mov edi, dword [edx]
sub edi, 0x2c
mov dword [edx], edi
mov edx, dword [ecx]
mov edx, dword [edx]
add edx, 0x2c
mov ecx, dword [ecx]
mov dword [ecx], edx
mov dword [eax], 1
jmp 0x1006b250