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

Disassembly:
mov eax, 0x58
call fcn.1011fc40
push ebx
mov ebx, dword [esp + 0x64]
push esi
mov esi, dword [esp + 0x64]
mov eax, dword [esi]
push edi
xor edi, edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x5c], edi
cmp eax, dword [ebx]
jne 0x100d11df
mov ecx, dword [esi + 0x10]
cmp ecx, edi
je 0x100d1203
mov eax, dword [ebx + 4]
cmp eax, edi
je 0x100d1203
cmp ecx, eax
je 0x100d1203
push 0x184
push str.cryptoecec_mult.c
push 0x65
push 0xbb
push 0x10
call fcn.100719e0
add esp, 0x14
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x58
ret
push ebp
mov ebp, dword [esp + 0x78]
cmp dword [esp + 0x74], edi
jne 0x100d1224
cmp ebp, edi
jne 0x100d1224
push ebx
push esi
call fcn.1008ec30
add esp, 8
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x58
ret
mov ecx, dword [esi + 8]
push ecx
call fcn.10090b70
add esp, 4
test eax, eax
jne 0x100d12a1
mov edx, dword [esi + 0xc]
push edx
call fcn.10090b70
add esp, 4
test eax, eax
jne 0x100d12a1
cmp dword [esp + 0x74], edi
je 0x100d1270
cmp ebp, edi
jne 0x100d12a1
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x74]
push eax
push 0
push ecx
push esi
mov edi, ebx
call fcn.100d0d70
add esp, 0x10
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x58
ret
cmp ebp, 1
jne 0x100d12a1
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax]
push edx
mov edx, dword [esp + 0x84]
mov eax, dword [edx]
push ecx
push eax
push esi
mov edi, ebx
call fcn.100d0d70
add esp, 0x10
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x58
ret
xor ecx, ecx
cmp ebp, edi
jbe 0x100d12d2
mov ebx, dword [esi]
lea esp, [esp]
mov edx, dword [esp + 0x7c]
mov eax, dword [edx + ecx*4]
cmp ebx, dword [eax]
jne 0x100d1323
mov edx, dword [esi + 0x10]
cmp edx, edi
je 0x100d12cd
mov eax, dword [eax + 4]
cmp eax, edi
je 0x100d12cd
cmp edx, eax
jne 0x100d1323
inc ecx
cmp ecx, ebp
jb 0x100d12b0
mov ebx, dword [esp + 0x84]
cmp ebx, edi
jne 0x100d12f7
call fcn.100c2950
mov ebx, eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x84], ebx
cmp eax, edi
je 0x100d1b85
cmp dword [esp + 0x74], edi
je 0x100d13da
push esi
call fcn.10080120
add esp, 4
mov dword [esp + 0x58], eax
cmp eax, edi
jne 0x100d1348
push 0x1b8
push str.cryptoecec_mult.c
push 0x71
jmp 0x100d1b76
push 0x1aa
push str.cryptoecec_mult.c
push 0x65
push 0xbb
push 0x10
call fcn.100719e0
add esp, 0x14
pop ebp
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x58
ret
mov ecx, dword [esi + 0x60]
mov dword [esp + 0x10], ecx
cmp ecx, edi
je 0x100d13c5
cmp dword [ecx + 8], edi
je 0x100d13c5
mov edx, dword [ecx + 0x10]
mov ecx, dword [edx]
push ebx
push ecx
push eax
push esi
call fcn.1008efd0
add esp, 0x10
test eax, eax
jne 0x100d13c5
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x74]
mov esi, dword [ebx + 4]
push edx
mov dword [esp + 0x38], esi
call fcn.10090d50
xor edx, edx
div esi
add esp, 4
lea esi, [eax + 1]
mov eax, dword [ebx + 8]
mov dword [esp + 0x18], esi
cmp esi, eax
jbe 0x100d139d
mov esi, eax
mov dword [esp + 0x18], eax
mov ecx, dword [ebx + 0xc]
dec ecx
mov edx, 1
shl edx, cl
imul eax, edx
mov dword [esp + 0x54], edx
cmp dword [ebx + 0x14], eax
je 0x100d13dc
push 0x1d4
push str.cryptoecec_mult.c
push 0x44
jmp 0x100d1b76
mov eax, 1
mov dword [esp + 0x10], edi
mov dword [esp + 0x18], eax
mov dword [esp + 0x40], eax
mov esi, eax
jmp 0x100d13dc
mov esi, edi
lea eax, [esi + ebp]
push 0x1e2
lea esi, [eax*4]
push str.cryptoecec_mult.c
push esi
mov dword [esp + 0x2c], eax
call fcn.10079030
push 0x1e3
push str.cryptoecec_mult.c
push esi
mov dword [esp + 0x3c], eax
call fcn.10079030
push 0x1e5
mov dword [esp + 0x44], eax
lea eax, [esi + 4]
push str.cryptoecec_mult.c
push eax
call fcn.10079030
push 0x1e6
mov ebx, eax
push str.cryptoecec_mult.c
push esi
mov dword [esp + 0x5c], ebx
call fcn.10079030
add esp, 0x30
mov dword [esp + 0x14], eax
cmp ebx, edi
je 0x100d1448
mov dword [ebx], edi
cmp dword [esp + 0x24], edi
je 0x100d1b6a
cmp dword [esp + 0x28], edi
je 0x100d1b6a
cmp ebx, edi
je 0x100d1b6a
cmp dword [esp + 0x14], edi
je 0x100d1b6a
mov eax, dword [esp + 0x40]
add eax, ebp
mov dword [esp + 0x3c], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x38], eax
cmp eax, edi
jbe 0x100d1578
mov esi, dword [esp + 0x24]
mov ebx, dword [esp + 0x80]
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
sub ebx, esi
sub edi, esi
sub eax, esi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x64], eax
jmp 0x100d14b4
mov ebx, dword [esp + 0x44]
cmp dword [esp + 0x1c], ebp
jae 0x100d14c0
mov edx, dword [ebx + esi]
push edx
jmp 0x100d14c5
mov eax, dword [esp + 0x74]
push eax
call fcn.10090d50
add esp, 4
cmp eax, 0x7d0
jb 0x100d14db
mov eax, 6
jmp 0x100d150b
cmp eax, 0x320
jb 0x100d14e9
mov eax, 5
jmp 0x100d150b
cmp eax, 0x12c
jb 0x100d14f7
mov eax, 4
jmp 0x100d150b
cmp eax, 0x46
jb 0x100d1503
mov eax, 3
jmp 0x100d150b
cmp eax, 0x14
sbb eax, eax
add eax, 2
lea ecx, [eax - 1]
mov edx, 1
shl edx, cl
mov dword [esi], eax
mov dword [edi + esi + 4], 0
add dword [esp + 0x3c], edx
cmp dword [esp + 0x1c], ebp
jae 0x100d152e
mov eax, dword [ebx + esi]
jmp 0x100d1532
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x64]
mov edx, dword [esi]
add ebx, esi
push ebx
push edx
push eax
call fcn.100c4510
add esp, 0xc
mov dword [edi + esi], eax
test eax, eax
je 0x100d1b85
mov ebx, dword [ebx]
cmp ebx, dword [esp + 0x30]
jbe 0x100d155c
mov dword [esp + 0x30], ebx
mov eax, dword [esp + 0x1c]
inc eax
add esi, 4
mov dword [esp + 0x1c], eax
cmp eax, dword [esp + 0x38]
jb 0x100d14b0
mov ebx, dword [esp + 0x2c]
xor edi, edi
cmp dword [esp + 0x18], edi
je 0x100d1760
cmp dword [esp + 0x10], edi
jne 0x100d15a4
cmp dword [esp + 0x40], 1
je 0x100d1760
push 0x20b
push str.cryptoecec_mult.c
push 0x44
jmp 0x100d1b76
mov dword [esp + 0x44], edi
cmp dword [esp + 0x40], edi
je 0x100d15bf
push 0x214
push str.cryptoecec_mult.c
push 0x44
jmp 0x100d1b76
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x44]
push edx
push eax
mov dword [ecx + ebp*4], eax
mov eax, dword [esp + 0x7c]
push eax
call fcn.100c4510
mov esi, eax
add esp, 0xc
mov dword [esp + 0x1c], esi
cmp esi, edi
je 0x100d1b85
mov ecx, dword [esp + 0x44]
cmp ecx, dword [esp + 0x30]
ja 0x100d1620
mov eax, dword [esp + 0x28]
mov dword [ebx + ebp*4], esi
mov dword [ebx + ebp*4 + 4], edi
mov dword [eax + ebp*4], ecx
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
lea edx, [ebp + 1]
mov dword [esp + 0x20], edx
mov edx, dword [ecx + 0x10]
mov dword [eax + ebp*4], edx
jmp 0x100d1760
mov eax, dword [esp + 0x18]
imul eax, dword [esp + 0x34]
cmp ecx, eax
jae 0x100d1678
mov edi, dword [esp + 0x34]
xor edx, edx
lea eax, [ecx + edi - 1]
div edi
mov edx, dword [esp + 0x10]
cmp eax, dword [edx + 8]
jbe 0x100d1672
push 0x23f
push str.cryptoecec_mult.c
push 0x44
push 0xbb
push 0x10
call fcn.100719e0
push 0x240
push str.cryptoecec_mult.c
push esi
call fcn.100790e0
add esp, 0x20
jmp 0x100d1b85
add eax, ebp
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov ebx, dword [edx + 0x10]
mov dword [esp + 0x40], eax
cmp ebp, dword [esp + 0x20]
jae 0x100d1747
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x14]
sub edi, eax
sub edx, eax
lea esi, [eax + ebp*4]
mov dword [esp + 0x64], edx
jmp 0x100d16b4
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x20]
dec eax
cmp ebp, eax
jae 0x100d16d3
mov eax, dword [esp + 0x34]
mov dword [esi], eax
cmp ecx, eax
jb 0x100d1794
sub ecx, eax
mov dword [esp + 0x44], ecx
jmp 0x100d16d5
mov dword [esi], ecx
push 0x25b
mov dword [edi + esi + 4], 0
mov eax, dword [esi]
push str.cryptoecec_mult.c
push eax
call fcn.10079030
add esp, 0xc
mov dword [edi + esi], eax
test eax, eax
je 0x100d17c8
mov ecx, dword [esi]
mov edx, dword [esp + 0x40]
push ecx
push edx
push eax
call fcn.1011fc70
mov eax, dword [esi]
add esp, 0xc
cmp eax, dword [esp + 0x30]
jbe 0x100d171a
mov dword [esp + 0x30], eax
cmp dword [ebx], 0
je 0x100d17fc
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x54]
add dword [esp + 0x40], edx
mov dword [eax + esi], ebx
inc ebp
add esi, 4
lea ebx, [ebx + ecx*4]
cmp ebp, dword [esp + 0x20]
jb 0x100d16b0
mov eax, dword [esp + 0x1c]
push 0x26e
push str.cryptoecec_mult.c
push eax
call fcn.100790e0
add esp, 0xc
xor edi, edi
mov ecx, dword [esp + 0x3c]
push 0x278
lea edx, [ecx*4 + 4]
push str.cryptoecec_mult.c
push edx
call fcn.10079030
add esp, 0xc
mov dword [esp + 0x50], eax
cmp eax, edi
jne 0x100d1830
push 0x27a
jmp 0x100d1b6f
push 0x24e
push str.cryptoecec_mult.c
push 0x44
push 0xbb
push 0x10
call fcn.100719e0
mov eax, dword [esp + 0x30]
push 0x24f
push str.cryptoecec_mult.c
push eax
call fcn.100790e0
add esp, 0x20
jmp 0x100d1b85
push 0x25d
push str.cryptoecec_mult.c
push 0x41
push 0xbb
push 0x10
call fcn.100719e0
mov ecx, dword [esp + 0x30]
push 0x25e
push str.cryptoecec_mult.c
push ecx
call fcn.100790e0
add esp, 0x20
jmp 0x100d1b85
push 0x266
push str.cryptoecec_mult.c
push 0x44
push 0xbb
push 0x10
call fcn.100719e0
mov edx, dword [esp + 0x30]
push 0x267
push str.cryptoecec_mult.c
push edx
call fcn.100790e0
add esp, 0x20
jmp 0x100d1b85
mov ecx, dword [esp + 0x3c]
lea ecx, [eax + ecx*4]
xor edi, edi
mov dword [esp + 0x54], ecx
mov dword [ecx], 0
mov ebx, eax
cmp dword [esp + 0x38], edi
jbe 0x100d18b7
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
sub eax, esi
mov dword [esp + 0x64], eax
jmp 0x100d1864
mov eax, dword [esp + 0x64]
mov dword [eax + esi], ebx
mov ecx, dword [esi]
dec ecx
mov edx, 1
shl edx, cl
xor ebp, ebp
test edx, edx
je 0x100d18a9
jmp 0x100d1880
mov eax, dword [esp + 0x6c]
push eax
call fcn.1008ea80
add esp, 4
mov dword [ebx], eax
test eax, eax
je 0x100d1b85
mov ecx, dword [esi]
dec ecx
mov edx, 1
shl edx, cl
inc ebp
add ebx, 4
cmp ebp, edx
jb 0x100d1880
inc edi
add esi, 4
cmp edi, dword [esp + 0x38]
jb 0x100d1860
mov ecx, dword [esp + 0x54]
cmp ebx, ecx
je 0x100d18cc
push 0x28b
push str.cryptoecec_mult.c
push 0x44
jmp 0x100d1b76
mov eax, dword [esp + 0x6c]
push eax
call fcn.1008ea80
add esp, 4
mov dword [esp + 0x4c], eax
test eax, eax
je 0x100d1b85
xor edi, edi
cmp dword [esp + 0x38], edi
jbe 0x100d19c0
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x24]
sub ebx, esi
mov dword [esp + 0x64], ebx
sub ebp, esi
mov edx, dword [esi]
mov eax, dword [edx]
cmp edi, dword [esp + 0x78]
jae 0x100d1914
mov ecx, dword [ebx + esi]
jmp 0x100d1918
mov ecx, dword [esp + 0x58]
push ecx
push eax
call fcn.1008ebb0
add esp, 8
test eax, eax
je 0x100d1b85
cmp dword [esi + ebp], 1
jbe 0x100d19b2
mov edx, dword [esi]
mov ecx, dword [esp + 0x84]
mov eax, dword [edx]
mov edx, dword [esp + 0x6c]
push ecx
mov ecx, dword [esp + 0x50]
push eax
push ecx
push edx
call fcn.1008edc0
add esp, 0x10
test eax, eax
je 0x100d1b85
mov ecx, dword [esi + ebp]
mov ebx, 1
dec ecx
mov eax, ebx
shl eax, cl
cmp eax, ebx
jbe 0x100d19ae
lea esp, [esp]
mov ecx, dword [esi]
mov edx, dword [esp + 0x84]
lea eax, [ecx + ebx*4]
mov ecx, dword [esp + 0x4c]
push edx
mov edx, dword [eax - 4]
mov eax, dword [eax]
push ecx
mov ecx, dword [esp + 0x74]
push edx
push eax
push ecx
call fcn.1008ed10
add esp, 0x14
test eax, eax
je 0x100d1b85
mov ecx, dword [esi + ebp]
dec ecx
mov edx, 1
shl edx, cl
inc ebx
cmp ebx, edx
jb 0x100d1970
mov ebx, dword [esp + 0x64]
inc edi
add esi, 4
cmp edi, dword [esp + 0x38]
jb 0x100d1905
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x70]
push ecx
push edx
push eax
call fcn.1008f0f0
add esp, 0x10
test eax, eax
je 0x100d1b85
mov ebp, dword [esp + 0x30]
dec ebp
mov edi, dword [esp + 0x70]
mov dword [esp + 0x3c], 1
js 0x100d1b2f
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x2c]
cmp dword [esp + 0x3c], 0
jne 0x100d1a2c
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x6c]
push ecx
push edi
push edi
push edx
call fcn.1008edc0
add esp, 0x10
test eax, eax
je 0x100d1b85
cmp dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
jbe 0x100d1b21
mov ecx, dword [esp + 0x28]
sub ecx, esi
mov eax, esi
sub eax, ebx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x70], eax
jmp 0x100d1a5b
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x64]
add eax, ebx
cmp dword [eax + ecx], ebp
jbe 0x100d1b03
mov eax, dword [eax]
movsx esi, byte [eax + ebp]
test esi, esi
je 0x100d1b03
xor eax, eax
test esi, esi
sets al
test eax, eax
je 0x100d1a81
neg esi
cmp eax, dword [esp + 0x48]
je 0x100d1ab9
cmp dword [esp + 0x3c], 0
jne 0x100d1aac
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x6c]
push ecx
push edi
push edx
call fcn.1008ee60
add esp, 0xc
test eax, eax
je 0x100d1b85
xor eax, eax
cmp dword [esp + 0x48], eax
sete al
mov dword [esp + 0x48], eax
mov ecx, dword [ebx]
sar esi, 1
cmp dword [esp + 0x3c], 0
mov edx, dword [ecx + esi*4]
je 0x100d1ae3
push edx
push edi
call fcn.1008ebb0
add esp, 8
test eax, eax
je 0x100d1b85
mov dword [esp + 0x3c], 0
jmp 0x100d1b03
mov eax, dword [esp + 0x84]
push eax
mov eax, dword [esp + 0x70]
push edx
push edi
push edi
push eax
call fcn.1008ed10
add esp, 0x14
test eax, eax
je 0x100d1b85
mov eax, dword [esp + 0x1c]
inc eax
add ebx, 4
mov dword [esp + 0x1c], eax
cmp eax, dword [esp + 0x20]
jb 0x100d1a53
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x14]
dec ebp
jns 0x100d1a06
cmp dword [esp + 0x3c], 0
je 0x100d1b3f
mov ecx, dword [esp + 0x6c]
push edi
push ecx
call fcn.1008ec30
add esp, 8
jmp 0x100d1b5c
cmp dword [esp + 0x48], 0
je 0x100d1b60
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x6c]
push edx
push edi
push eax
call fcn.1008ee60
add esp, 0xc
test eax, eax
je 0x100d1b85
mov dword [esp + 0x60], 1
jmp 0x100d1b85
push 0x1ed
push str.cryptoecec_mult.c
push 0x41
push 0xbb
push 0x10
call fcn.100719e0
add esp, 0x14
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.100c2a00
mov edx, dword [esp + 0x50]
push edx
call fcn.1008eb40
mov eax, dword [esp + 0x2c]
push 0x2e9
push str.cryptoecec_mult.c
push eax
call fcn.100790e0
mov ecx, dword [esp + 0x3c]
push 0x2ea
push str.cryptoecec_mult.c
push ecx
call fcn.100790e0
mov edi, dword [esp + 0x4c]
add esp, 0x20
test edi, edi
je 0x100d1c04
mov eax, dword [edi]
mov esi, edi
test eax, eax
je 0x100d1bf1
push 0x2ef
push str.cryptoecec_mult.c
push eax
call fcn.100790e0
mov eax, dword [esi + 4]
add esi, 4
add esp, 0xc
test eax, eax
jne 0x100d1bd4
push 0x2f1
push str.cryptoecec_mult.c
push edi
call fcn.100790e0
add esp, 0xc
mov edi, dword [esp + 0x50]
test edi, edi
je 0x100d1c3a
mov eax, dword [edi]
mov esi, edi
test eax, eax
je 0x100d1c27
push eax
call fcn.1008eb70
mov eax, dword [esi + 4]
add esi, 4
add esp, 4
test eax, eax
jne 0x100d1c14
push 0x2f7
push str.cryptoecec_mult.c
push edi
call fcn.100790e0
add esp, 0xc
mov edx, dword [esp + 0x14]
push 0x2f9
push str.cryptoecec_mult.c
push edx
call fcn.100790e0
mov eax, dword [esp + 0x6c]
add esp, 0xc
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x58
ret